Skip to main content

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​

ParameterTypeDefault valueDescription
langLowercase<string>undefined-
stepCalculationundefinedThe Calculation that produces the XPath step result for each context tuple.
sourcePlanTupleOperatorundefinedThe upstream tuple stream providing the XQuery focus context.
removeDuplicatesbooleantrueWhen true (default), duplicate DOM nodes in the step result are removed.

Returns​

TreeJoin

Overrides​

PlanTupleOperator.constructor

Properties​

lang​

lang: Lowercase<string>

Defined in: core/dist/plan/visitor.d.ts:36

PlanOperator.lang

Inherited from​

PlanTupleOperator.lang


parent?​

optional parent?: PlanOperator

Defined in: core/dist/plan/visitor.d.ts:38

PlanOperator.parent

Inherited from​

PlanTupleOperator.parent


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​

PlanTupleOperator.schema


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​

PlanTupleOperator.schemaSet


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​

ParameterType
visitorsRecord<string, XQueryPlanVisitor<Ret, Arg>>
arg?Arg

Returns​

Ret

Overrides​

PlanTupleOperator.accept


addToSchema()​

addToSchema(item): void

Defined in: core/dist/plan/visitor.d.ts:46

will preserve object references

Parameters​

ParameterType
itemASTIdentifier | IdSet | ASTIdentifier[]

Returns​

void

Inherited from​

PlanTupleOperator.addToSchema


clearSchema()​

clearSchema(): void

Defined in: core/dist/plan/visitor.d.ts:50

will preserve object references

Returns​

void

Inherited from​

PlanTupleOperator.clearSchema


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​

PlanTupleOperator.clone


getChildren()​

getChildren(): PlanOperator[]

Defined in: lang-xquery/src/plan/tree-join.ts:55

Returns [this.source, this.step].

Returns​

PlanOperator[]

Overrides​

PlanTupleOperator.getChildren


getDependencies()​

getDependencies(): IdSet

Defined in: core/dist/plan/visitor.d.ts:54

PlanOperator.getDependencies

Returns​

IdSet

Inherited from​

PlanTupleOperator.getDependencies


removeFromSchema()​

removeFromSchema(item): boolean

Defined in: core/dist/plan/visitor.d.ts:48

will preserve object references

Parameters​

ParameterType
itemASTIdentifier | 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​

ParameterType
currentPlanOperator
replacementPlanOperator

Returns​

void

Overrides​

PlanTupleOperator.replaceChild