Domain: | Test functions |
The IS-SDF-P( ) function checks whether SDF-P has been loaded in the system. If it has, the result TRUE is returned. The result FALSE is returned in the following cases:
SDF-P has not been loaded.
SDF-P is loaded but SDF-P-BASYS functionality is currently being simulated in the task (FUNCTIONALITY=*BASIC setting in the MODIFY-PROCEDURE-TEST-OPTIONS command, see “SDF-P” manual [34]).
If SDF-P has been loaded (i.e. the result is TRUE), it is possible to use functions or commands of the chargeable subsystem SDF-P in an IF branch (see example). However, this does not apply to chargeable control flow commands such as FOR, WHILE, REPEAT, since control flow commands are checked as part of pre-analysis, i.e. before the builtin function is called. If SDF-P is not loaded or SDF-P-BASYS functionality is being simulated, using the control flow command FOR, for example, will always result in an error.
Format
IS-SDF-P( ) |
Result type
BOOLEAN
Input parameters
None
Result
TRUE
SDF-P has been loaded in the system.
FALSE
SDF-P has not been loaded in the system or SDF-P-BASYS functionality is being simulated in the task.
Error message
None
Example 1
/A = IS-SDF-P /SHOW-VAR A A = TRUE
Example 2
/SET-PROCEDURE-OPTIONS . . . / IF (IS-SDF-P) / "In this IF branch, all commands and builtin" / " functions of SDF-P can be used." / "However, SDF-P control flow commands cannot" / " be used (e.g. FOR, WHILE, REPEAT)." . . . / ELSE / "In the ELSE branch, only the basic functions of" / " SDF-P-BASYS can be used." . . . / END-IF . . .