Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

IS-SDF-P( ) - Check whether SDF-P is loaded

&pagelevel(5)&pagelevel

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 
. 
. 
.