next up previous

12.18.2 Multifield Expansion Function

The $ operator is merely a shorthand notation for the expand$ function call. For example, the function calls

(printout t $?b crlf)

and

(printout t (expand$ ?b) crlf)

are identical.

Syntax

(expand$ <multifield-expression>)

The expand$ function is valid only within the argument list of a function call. The expand$ function (and hence sequence expansion) cannot be used as an argument to the following functions: expand$, return, progn, while, if, progn$, switch, loop-for-count, assert, modify, duplicate and object-pattern-match-delay.

12.18.3 Setting The Sequence Operator Recognition Behavior

This function sets the sequence operator recognition behavior. When this behavior is disabled (FALSE by default), multifield variables found in function calls are treated as a single argument. When this behaviour is enabled, multifield variables are expanded and passed as separate arguments in the function call. This behavior should be set before an expression references a multifield variable is encountered (i.e. changing the behavior does not retroactively change the behavior for previously encountered expressions). The return value for this function is the old value for the behavior.

Syntax

(set-sequence-operator-recognition <boolean-expression>)

12.18.4 Getting The Sequence Operator Recognition Behavior

This function returns the current value of the sequence operator recognition behavior (TRUE or FALSE).

Syntax

(get-sequence-operator-recognition)


next up previous