Class: IndexedRecursion
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:90
Recursion variant that uses an index-backed mapping to navigate edges,
enabling efficient graph traversals without a full scan per step.
Extends
Constructors
Constructor
new IndexedRecursion(
lang,min,max,mapping,source,distinctKeys?):IndexedRecursion
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:91
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
lang | Lowercase<string> | undefined | - |
min | number | undefined | Minimum number of hops (inclusive). |
max | number | undefined | Maximum number of hops (inclusive). |
mapping | PlanTupleOperator | undefined | Index-backed edge traversal operator evaluated per step. |
source | PlanTupleOperator | undefined | Tuple operator providing the start rows. |
distinctKeys | (Calculation | ASTIdentifier)[] | [] | If set, the recursion will only consider distinct combinations of these keys |
Returns
IndexedRecursion
Overrides
Properties
distinctKeys
distinctKeys: (
Calculation|ASTIdentifier)[] =[]
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:102
If set, the recursion will only consider distinct combinations of these keys
lang
lang:
Lowercase<string>
Defined in: packages/core/src/plan/visitor.ts:42
PlanOperator.lang
Inherited from
mapping
mapping:
PlanTupleOperator
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:98
Index-backed edge traversal operator evaluated per step.
max
max:
number
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:96
Maximum number of hops (inclusive).
min
min:
number
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:94
Minimum number of hops (inclusive).
parent?
optionalparent?:PlanOperator
Defined in: packages/core/src/plan/visitor.ts:44
PlanOperator.parent
Inherited from
schema
schema:
ASTIdentifier[]
Defined in: packages/core/src/plan/visitor.ts:38
Ordered list of attribute identifiers produced by this operator.
Inherited from
schemaSet
schemaSet:
IdSet
Defined in: packages/core/src/plan/visitor.ts:40
Trie-backed set of the same paths as schema; used for O(k) membership tests.
Inherited from
source
source:
PlanTupleOperator
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:100
Tuple operator providing the start rows.
Methods
accept()
accept<
Ret,Arg>(visitors,arg?):Ret
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:114
PlanOperator.accept
Type Parameters
| Type Parameter |
|---|
Ret |
Arg |
Parameters
| Parameter | Type |
|---|---|
visitors | Record<string, PlanVisitor<Ret, Arg>> |
arg? | Arg |
Returns
Ret
Overrides
addToSchema()
addToSchema(
item):void
Defined in: packages/core/src/plan/visitor.ts:57
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | IdSet | ASTIdentifier | ASTIdentifier[] |
Returns
void
Inherited from
clearSchema()
clearSchema():
void
Defined in: packages/core/src/plan/visitor.ts:102
will preserve object references
Returns
void
Inherited from
clone()
clone():
IndexedRecursion
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:141
PlanOperator.clone
Returns
IndexedRecursion
Overrides
getChildren()
getChildren():
PlanOperator[]
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:137
PlanOperator.getChildren
Returns
Overrides
getDependencies()
getDependencies():
IdSet
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:153
PlanOperator.getDependencies
Returns
Overrides
PlanTupleOperator.getDependencies
removeFromSchema()
removeFromSchema(
item):boolean
Defined in: packages/core/src/plan/visitor.ts:80
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | IdSet | ASTIdentifier | ASTIdentifier[] |
Returns
boolean
Inherited from
PlanTupleOperator.removeFromSchema
replaceChild()
replaceChild(
current,replacement):void
Defined in: packages/core/src/plan/operators/tuple/recursion.ts:122
PlanOperator.replaceChild
Parameters
| Parameter | Type |
|---|---|
current | PlanOperator |
replacement | PlanOperator |
Returns
void