Class: TreeJoin
Defined in: lang-xquery/src/plan/tree-join.ts:14
Similar to ProjectionConcat, also provides xquery focus context.
The Calculation output in step will be spread into multiple output
tuples if it is an array. Removes duplicates of Node values.
Extends
Constructors
Constructor
new TreeJoin(
lang,step,source,removeDuplicates?):TreeJoin
Defined in: lang-xquery/src/plan/tree-join.ts:15
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
lang | Lowercase<string> | undefined | - |
step | Calculation | undefined | The Calculation that produces the XPath step result for each context tuple. |
source | PlanTupleOperator | undefined | The upstream tuple stream providing the XQuery focus context. |
removeDuplicates | boolean | true | When true (default), duplicate DOM nodes in the step result are removed. |
Returns
TreeJoin
Overrides
Properties
lang
lang:
Lowercase<string>
Defined in: core/dist/plan/visitor.d.ts:36
PlanOperator.lang
Inherited from
parent?
optionalparent?:PlanOperator
Defined in: core/dist/plan/visitor.d.ts:38
PlanOperator.parent
Inherited from
removeDuplicates
removeDuplicates:
boolean=true
Defined in: lang-xquery/src/plan/tree-join.ts:22
When true (default), duplicate DOM nodes in the step result are removed.
schema
schema:
ASTIdentifier[]
Defined in: core/dist/plan/visitor.d.ts:32
Ordered list of attribute identifiers produced by this operator.
Inherited from
schemaSet
schemaSet:
IdSet
Defined in: core/dist/plan/visitor.d.ts:34
Trie-backed set of the same paths as schema; used for O(k) membership tests.
Inherited from
source
source:
PlanTupleOperator
Defined in: lang-xquery/src/plan/tree-join.ts:20
The upstream tuple stream providing the XQuery focus context.
step
step:
Calculation
Defined in: lang-xquery/src/plan/tree-join.ts:18
The Calculation that produces the XPath step result for each context tuple.
Methods
accept()
accept<
Ret,Arg>(visitors,arg?):Ret
Defined in: lang-xquery/src/plan/tree-join.ts:36
Dispatches to visitors[this.lang].visitTreeJoin.
Type Parameters
| Type Parameter |
|---|
Ret |
Arg |
Parameters
| Parameter | Type |
|---|---|
visitors | Record<string, XQueryPlanVisitor<Ret, Arg>> |
arg? | Arg |
Returns
Ret
Overrides
addToSchema()
addToSchema(
item):void
Defined in: core/dist/plan/visitor.d.ts:46
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | ASTIdentifier | IdSet | ASTIdentifier[] |
Returns
void
Inherited from
clearSchema()
clearSchema():
void
Defined in: core/dist/plan/visitor.d.ts:50
will preserve object references
Returns
void
Inherited from
clone()
clone():
TreeJoin
Defined in: lang-xquery/src/plan/tree-join.ts:59
Returns a deep copy with cloned step and source.
Returns
TreeJoin
Overrides
getChildren()
getChildren():
PlanOperator[]
Defined in: lang-xquery/src/plan/tree-join.ts:55
Returns [this.source, this.step].
Returns
Overrides
getDependencies()
getDependencies():
IdSet
Defined in: core/dist/plan/visitor.d.ts:54
PlanOperator.getDependencies
Returns
Inherited from
PlanTupleOperator.getDependencies
removeFromSchema()
removeFromSchema(
item):boolean
Defined in: core/dist/plan/visitor.d.ts:48
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | ASTIdentifier | IdSet | ASTIdentifier[] |
Returns
boolean
Inherited from
PlanTupleOperator.removeFromSchema
replaceChild()
replaceChild(
current,replacement):void
Defined in: lang-xquery/src/plan/tree-join.ts:43
Swaps source or step and recomputes the output schema including XQuery context columns.
Parameters
| Parameter | Type |
|---|---|
current | PlanOperator |
replacement | PlanOperator |
Returns
void