1; 2; Very preliminary version of RESOLVE_ALL 3; This was enough to run Ulyss 4; http://ulyss.univ-lyon1.fr/download.html 5; 6; Contributions welcome ! 7; 8; This code is under GNU GPL V2 or later 9; Ilia N., Alain C., July 2015 10; 11pro RESOLVE_ALL, RESOLVE_EITHER=resolve_either, $ 12 RESOLVE_FUNCTION=resolve_function, $ 13 RESOLVE_PROCEDURE=resolve_procedure, $ 14 CONTINUE_ON_ERROR=continue_on_error, UNRESOLVED=unres, $ 15 class=class, SKIP_ROUTINES=skip_routines, QUIET=quiet, $ 16 help=help, test=test 17; 18 19compile_opt hidden, idl2 20 21ON_ERROR, 2 22 23if KEYWORD_SET(help) then begin 24 print, 'pro RESOLVE_ALL, RESOLVE_EITHER=resolve_either, $' 25 print, ' RESOLVE_FUNCTION=res_fun, RESOLVE_PROCEDURE=res_pro, $' 26 print, ' CONTINUE_ON_ERROR=continue_on_error, UNRESOLVED=UNRESOLVED, $' 27 print, ' CLASS=class, SKIP_ROUTINES=skip_routines, QUIET=quiet, $' 28 print, ' help=help, test=test' 29 print, ' ' 30 print, 'keyword CLASS= not ready' 31 print, 'keyword UNRESOLVED= not ready' 32 print, 'keyword SKIP_ROUTINES= not ready' 33 return 34endif 35; 36please='; Please contribute !' 37; 38if KEYWORD_SET(CLASS) then begin 39 MESSAGE, 'Keyword CLASS is not ready'+please 40endif 41if KEYWORD_SET(SKIP_ROUTINES) then begin 42 MESSAGE, 'Keyword SKIP_ROUTINES is not ready'+please 43endif 44if KEYWORD_SET(UNRESOLVED) then begin 45 MESSAGE, 'Keyword UNRESOLVED is not ready'+please 46endif 47; 48if KEYWORD_SET(QUIET) then begin 49 quiet_save=!quiet 50 !quiet = quiet 51endif else begin 52 quiet = 0 53endelse 54; 55; procedures only 56; 57if KEYWORD_SET(resolve_procedure) then begin 58 if ~KEYWORD_SET(continue_on_error) then begin 59 RESOLVE_ROUTINE, resolve_procedure 60 endif else begin 61 for i = 0, N_ELEMENTS(resolve_procedure)-1 do begin 62 command='RESOLVE_ROUTINE, resolve_procedure[i]' 63 a=EXECUTE(command) 64 endfor 65 endelse 66endif 67; 68; functions only 69; 70if KEYWORD_SET(resolve_function) then begin 71 if ~KEYWORD_SET(continue_on_error) then begin 72 RESOLVE_ROUTINE, resolve_function, /is_function 73 endif else begin 74 for i = 0, N_ELEMENTS(resolve_function)-1 do begin 75 command='RESOLVE_ROUTINE, resolve_function[i], /is_function' 76 a=EXECUTE(command) 77 endfor 78 endelse 79endif 80; 81; procedures or functions : /either 82; 83if KEYWORD_SET(resolve_either) then begin 84 if ~KEYWORD_SET(continue_on_error) then begin 85 RESOLVE_ROUTINE, resolve_either, /either 86 endif else begin 87 for i = 0, N_ELEMENTS(resolve_either)-1 do begin 88 command='RESOLVE_ROUTINE, resolve_either[i], /either' 89 a=EXECUTE(command) 90 endfor 91 endelse 92endif 93; 94if KEYWORD_SET(QUIET) then !quiet=quiet_save 95; 96if KEYWORD_SET(test) then STOP 97; 98end 99