Function Call — logic.functionCall
Calls an exported function from a Required module, or calls a sibling function declared in the same file (including recursive calls). Always created pre-filled from the node search (pick a specific exported function or same-file function) rather than configured from a blank default.
- Inputs:
in— "Request", plus one dynamic value pin per declared parameter - Outputs:
out— "Next";result— "Result" (optional — see below) - Config fields:
- For external functions:
requirePath,variableName,functionName,params - For same-file functions:
functionName,params(requirePath/variableName unused) - Both:
resultVariable(defaultresult, must be a valid unique identifier — other nodes reference this call's return value by this name)
- For external functions:
- The "Result" output is optional: if nothing reads it, the call compiles to a bare
fn(...)statement with no unusedconst. - Inlining: if Result is wired straight into an adjacent
variable.setnode's Value pin (and nothing else consumes it), the call is inlined directly into the assignment instead of going through an intermediate variable. - Recursion: Inside a Function Graph, you can add a Function Call that references the same function whose graph you're editing — the picker labels it "(recursive)". The call compiles to the bare function name (no module prefix), enabling true recursive logic.
// Result unwired — fire-and-forget
printerFunctions.printer("hello");
// Result wired into an adjacent Set Variable — inlined
printResult = printerFunctions.printer("hello");
// Result wired elsewhere — a real intermediate declaration
const printerResult = printerFunctions.printer("hello");
// Recursive call in a Function Graph (inside a factorial function)
const remainder = factorial(n - 1);
const answer = n * remainder;
return answer;
Usable both on the main canvas and inside a Function Graph.