Interface: ArgMeta
Defined in: packages/core/src/visitors/calculation-builder.ts:19
Metadata attached to each argument of a compiled plan.Calculation, used during query planning to track replacement locations, aggregation membership, and evaluation constraints.
Properties
acceptSequence?
optionalacceptSequence?:boolean
Defined in: packages/core/src/visitors/calculation-builder.ts:53
This argument may be a sequence of values. No enforcement of single value is necessary.
aggregate?
optionalaggregate?:AggregateCall
Defined in: packages/core/src/visitors/calculation-builder.ts:27
This argument is the result of this aggregation.
maybeSkipped?
optionalmaybeSkipped?:boolean
Defined in: packages/core/src/visitors/calculation-builder.ts:23
Evaluation of this argument may be skipped, for example, if it is a part of OR or AND expressions.
originalLocations
originalLocations:
object[]
Defined in: packages/core/src/visitors/calculation-builder.ts:32
Where exactly is this argument located? Used for argument replacements during query planning.
idAsFnArg?
optionalidAsFnArg?:boolean
This argument is an identifier and its location is in an plan.FnCall. This is important, because if the argument is to be later replaced with a PlanOperator, the replacement must be in the form of plan.PlanOpAsArg.
key
key:
string|number
The key in the original object.
obj
obj:
any
The original object containing this argument.
op
op:
PlanOperator
The containing operator.
usedMultipleTimes?
optionalusedMultipleTimes?:boolean
Defined in: packages/core/src/visitors/calculation-builder.ts:49
This argument is used multiple times in the calculation.