The RESOLVE_ROUTINE procedure compiles user-written or library procedures or functions, given their names. Routines are compiled even if they are already defined (unless the SKIP_EXISTING keyword is set). RESOLVE_ROUTINE looks for the given filename in IDL’s search path. If the file is not found in the path, then the routine exits with an error.
RESOLVE_ROUTINE, Name, /COMPILE_FULL_FILE, /EITHER, /IS_FUNCTION, /NO_RECOMPILE, /QUIET, /SKIP_EXISTING
A scalar string or string array containing the name or names of the procedures to compile. If Name contains functions rather than procedures, set the IS_FUNCTION keyword. The Name argument cannot contain the path to the .pro file—it must contain only a .pro filename. If you want to specify a path to the .pro file, use the .COMPILE executive command.
When compiling a file to find a specified routine, IDL normally stops compiling when the desired routine (Name) is found. If set, COMPILE_FULL_FILE compiles the entire file.
If set, indicates that the caller does not know whether the supplied routine names are functions or procedures, and will accept either. This keyword overrides the IS_FUNCTION keyword.
Set this keyword to compile functions rather than procedures.
Normally, RESOLVE_ROUTINE compiles a PRO or SAVE file even if the specified routine has already been compiled. If you set /NO_RECOMPILE, and the routine has already been compiled, then the entire file is ignored, even if that file might contain other un-compiled routines.
Tip: If you want IDL to attempt to compile the entire file, but still skip duplicate routines, you should use the SKIP_EXISTING keyword instead.
Normally, RESOLVE_ROUTINE will generate errors if the routine cannot be found or if it is a system routine. Set QUIET to quietly ignore any errors.
By default, if a routine is already compiled in IDL, RESOLVE_ROUTINE will replace the existing code. If you set /SKIP_EXISTING, then any routines that are already compiled are quietly ignored.
Tip: This keyword is useful if you have code (either in a PRO or SAVE file) from an older version of IDL, and you do not want the old routines to replace your currently-compiled "new" routines.
Added QUIET keyword
|Added SKIP_EXISTING keyword|