Calling SOUL $functions: Difference between revisions
mNo edit summary |
m (add category) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Many of the | Many of the [[SOUL]] $functions can be invoked using a <var>CALL</var> statement instead of assigning the function result to a %variable. For example: | ||
<p class="code"> | <p class="code">%L = $LISTNEW | ||
$LISTADD(%L, 'Once upon a midnight dreary') | |||
$LISTADD(%L, 'As I pondered weak and weary') | |||
CALL $LIST_PRINT(%L) | |||
</p> | </p> | ||
You can CALL such $functions and still test for their return code, if necessary. For | You can <var>CALL</var> such $functions and still test for their return code, if necessary. For | ||
example: | example: | ||
<p class="code"> | <p class="code">CALL $LIST_PRINT(%L) | ||
IF $LIST_PRINT(%L) THEN | |||
... | |||
</p> | </p> | ||
"Callability" is an optional approach; it does not replace %variable assignment. The callable $functions are indicated as such on their function page. Typically they are $functions that do more than simply return a value, and the value they return is primarily an indicator of whether the function completed successfully. [[$ListCnt]], for example, is a (non-callable) $function because the function's purpose is to return a list count to the | "Callability" is an optional approach; it does not replace %variable assignment. The callable $functions are indicated as such on their function page. Typically they are $functions that do more than simply return a value, and the value they return is primarily an indicator of whether the function completed successfully. <var>[[$ListCnt]]</var>, for example, is a (non-callable) $function because the function's purpose is to return a list count to the SOUL program. | ||
[[Category:SOUL]] |
Latest revision as of 19:02, 20 April 2018
Many of the SOUL $functions can be invoked using a CALL statement instead of assigning the function result to a %variable. For example:
%L = $LISTNEW $LISTADD(%L, 'Once upon a midnight dreary') $LISTADD(%L, 'As I pondered weak and weary') CALL $LIST_PRINT(%L)
You can CALL such $functions and still test for their return code, if necessary. For example:
CALL $LIST_PRINT(%L) IF $LIST_PRINT(%L) THEN ...
"Callability" is an optional approach; it does not replace %variable assignment. The callable $functions are indicated as such on their function page. Typically they are $functions that do more than simply return a value, and the value they return is primarily an indicator of whether the function completed successfully. $ListCnt, for example, is a (non-callable) $function because the function's purpose is to return a list count to the SOUL program.