Skip to main content

Abstract Class: SetOperator

Defined in: packages/core/src/plan/operators/tuple/set.ts:10

Abstract base for binary set operations (union, intersection, difference) on two operator streams.

Both left and right must be of the same kind (both tuple or both non-tuple); the schema is taken from left.

Throws​

if one side is a tuple operator and the other is not.

Extends​

Extended by​

Constructors​

Constructor​

new SetOperator(lang, left, right): SetOperator

Defined in: packages/core/src/plan/operators/tuple/set.ts:11

Parameters​

ParameterTypeDescription
langLowercase<string>-
leftPlanOperatorLeft input stream.
rightPlanOperatorRight input stream.

Returns​

SetOperator

Overrides​

PlanTupleOperator.constructor

Properties​

lang​

lang: Lowercase<string>

Defined in: packages/core/src/plan/visitor.ts:42

PlanOperator.lang

Inherited from​

PlanTupleOperator.lang


left​

left: PlanOperator

Defined in: packages/core/src/plan/operators/tuple/set.ts:14

Left input stream.


parent?​

optional parent?: PlanOperator

Defined in: packages/core/src/plan/visitor.ts:44

PlanOperator.parent

Inherited from​

PlanTupleOperator.parent


right: PlanOperator

Defined in: packages/core/src/plan/operators/tuple/set.ts:16

Right input stream.


schema​

schema: ASTIdentifier[]

Defined in: packages/core/src/plan/visitor.ts:38

Ordered list of attribute identifiers produced by this operator.

Inherited from​

PlanTupleOperator.schema


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​

PlanTupleOperator.schemaSet

Methods​

accept()​

abstract accept<T>(visitors): T

Defined in: packages/core/src/plan/operators/tuple/set.ts:37

PlanOperator.accept

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
visitorsRecord<string, PlanVisitor<T>>

Returns​

T

Overrides​

PlanTupleOperator.accept


addToSchema()​

addToSchema(item): void

Defined in: packages/core/src/plan/visitor.ts:57

will preserve object references

Parameters​

ParameterType
itemIdSet | ASTIdentifier | ASTIdentifier[]

Returns​

void

Inherited from​

PlanTupleOperator.addToSchema


clearSchema()​

clearSchema(): void

Defined in: packages/core/src/plan/visitor.ts:102

will preserve object references

Returns​

void

Inherited from​

PlanTupleOperator.clearSchema


clone()​

abstract clone(): PlanTupleOperator

Defined in: packages/core/src/plan/visitor.ts:110

PlanOperator.clone

Returns​

PlanTupleOperator

Inherited from​

PlanTupleOperator.clone


getChildren()​

getChildren(): PlanOperator[]

Defined in: packages/core/src/plan/operators/tuple/set.ts:48

PlanOperator.getChildren

Returns​

PlanOperator[]

Overrides​

PlanTupleOperator.getChildren


getDependencies()​

getDependencies(): IdSet

Defined in: packages/core/src/plan/visitor.ts:113

PlanOperator.getDependencies

Returns​

IdSet

Inherited from​

PlanTupleOperator.getDependencies


removeFromSchema()​

removeFromSchema(item): boolean

Defined in: packages/core/src/plan/visitor.ts:80

will preserve object references

Parameters​

ParameterType
itemIdSet | ASTIdentifier | ASTIdentifier[]

Returns​

boolean

Inherited from​

PlanTupleOperator.removeFromSchema


replaceChild()​

replaceChild(current, replacement): void

Defined in: packages/core/src/plan/operators/tuple/set.ts:39

PlanOperator.replaceChild

Parameters​

ParameterType
currentPlanOperator
replacementPlanOperator

Returns​

void

Overrides​

PlanTupleOperator.replaceChild