XARGS

Return information about arguments passed to external routine

WTSupported in traditional Synergy on Windows

 

USupported on UNIX
VSupported on OpenVMS
xcall XARGS([arguments][, passed])

Arguments

arguments

(optional) Returned with the number of arguments passed to the calling routine. (n)

passed

(optional) An array of single-digit numeric fields that is returned with an indication of whether each defined argument was passed (1) or not passed (0). (a)

Discussion

The XARGS subroutine returns information about arguments passed when called within a Synergy DBL external subroutine.

A digit within the passed argument is set to 1 if the corresponding argument of the external subroutine from which XARGS is called has been passed. Otherwise, the digit is set to 0. Therefore, passed can be redefined and subscripted such that passed(5), for example, indicates whether or not the fifth argument was passed.

Example

subroutine sub
record
    numargs     ,i4
    args        ,a5
     passed      ,5a1 @args
proc
    xcall xargs(numargs, args)
    if (numargs .and. passed(3))
      writes(TTCHN, "argument #3 was passed")