# Structs
ArrayAppendStmt represents a dynamic append operation of a value onto an array.
AssignIntStmt represents an assignment of an integer value to a local variable.
AssignVarOnceStmt represents an assignment of one local variable to another.
AssignVarStmt represents an assignment of one local variable to another.
BlockStmt represents a nested block.
BreakStmt represents a jump out of the current block.
CallDynamicStmt represents an indirect (data) function call.
CallStmt represents a named function call.
DotStmt represents a lookup operation on a value (e.g., array, object, etc.) The source of a DotStmt may be a scalar value in which case the statement will be undefined.
EqualStmt represents an value-equality check of two local variables.
IsArrayStmt represents a dynamic type check on a local variable.
IsDefinedStmt represents a check of whether a local variable is defined.
IsObjectStmt represents a dynamic type check on a local variable.
IsSetStmt represents a dynamic type check on a local variable.
IsUndefinedStmt represents a check of whether local variable is undefined.
LenStmt represents a length() operation on a local variable.
Location records the filen index, and the row and column inside that file that a statement can be connected to.
MakeArrayStmt constructs a local variable that refers to an array value.
MakeNullStmt constructs a local variable that refers to a null value.
MakeNumberIntStmt constructs a local variable that refers to an integer value.
MakeNumberRefStmt constructs a local variable that refers to a number stored as a string.
MakeObjectStmt constructs a local variable that refers to an object value.
MakeSetStmt constructs a local variable that refers to a set value.
NopStmt adds a nop instruction.
NotEqualStmt represents a != check of two local variables.
NotStmt represents a negated statement.
ObjectInsertOnceStmt represents a dynamic insert operation of a key/value pair into an object.
ObjectInsertStmt represents a dynamic insert operation of a key/value pair into an object.
ObjectMergeStmt performs a recursive merge of two object values.
Operand represents a value that a statement operates on.
ResetLocalStmt resets a local variable to 0.
ResultSetAddStmt adds a value into the result set returned by the query plan.
ReturnLocalStmt represents a return statement that yields a local value.
ScanStmt represents a linear scan over a composite value.
SetAddStmt represents a dynamic add operation of an element into a set.
WithStmt replaces the Local or a portion of the document referred to by the Local with the Value and executes the contained block.
# Type aliases
Bool represents a constant boolean.
StringIndex represents the index into the plan's list of constant strings of a constant string.