Operator Scope of Action:
Operator First Added:
This function allows execution of code without the need for a return value. This lets an action in an attribute, $Text being useful for long complex actions, and perform that action as part of a rule or agent action.
For example, the Rule
action('$Color= "bright red"')
will set the note's primary colour ($Color).
Note that that in its simplest form, an action() call is a quote-enclosed string. As action codes tend to use double-quoted strings, it may often be necessary to use single quotes for the outer enclosure, as in the example above.
The action function returns nothing (actually an empty string), so there is no requirement for a left-side attribute to accept any output. By comparison, the related eval(expression) function evaluates an expression and returns a value. Whereas eval() is designed to return an output, action() performs an action such as an assignment.
An action() call can be used with do(macro) to create a form of function as macros allow input parameters (its arguments) - see do().