These functions act as handlers for individual call expressions, or in the case of factories, return functions which do.
The (sub)expression being processed. This will be a call to the function your handler is assigned to work on.
The input collector in use. Represents state as the expression tree is walked.
The base directory when checking if a string literal is a file path
Are we in a part of the whole expression that specifies inputs
Are symbols within formulas to be counted as
inputs (TRUE
) or non-standardly evaluated variables
(FALSE
)
Are we in a part of the expression that indicates a variable's value is being updated (i.e., complex right hand side)
Are we in a direct pipe call
Should any symbols that appear to be inputs be treated as nonstandardly-evaluated instead
unused
Function handlers should only be used to construct an input collector
(i.e., as an argument to inputCollector
). They should not ever
be called directly by end users.
When creating new function handlers, they should accept the arguments specified above (other than those to the factories).