Skip to main content

Class: SQLEqualityChecker

Defined in: lang-sql/src/visitors/equality-checker.ts:13

Extends the core EqualityChecker with structural equality checks for SQL-specific plan operators: LangSwitch, Using, and TableAlias.

Extends​

Implements​

Constructors​

Constructor​

new SQLEqualityChecker(vmap): SQLEqualityChecker

Defined in: lang-sql/src/visitors/equality-checker.ts:17

Parameters​

ParameterType
vmapRecord<string, PlanVisitor<boolean, EcDescentArgs>>

Returns​

SQLEqualityChecker

Overrides​

EqualityChecker.constructor

Properties​

vmap​

protected vmap: Record<string, PlanVisitor<boolean, EcDescentArgs>>

Defined in: core/dist/visitors/equality-checker.d.ts:20

Per-language visitor map used for recursive descent.

Inherited from​

EqualityChecker.vmap

Methods​

areEqual()​

areEqual(op1, op2, options?): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:47

if options.renameMap is provided, it will be used to rename the items in the op2 before comparing.

Parameters​

ParameterType
op1OpOrId
op2OpOrId
options?{ ignoreLang?: boolean; renameMap?: RenameMap; }
options.ignoreLang?boolean
options.renameMap?RenameMap

Returns​

boolean

Inherited from​

EqualityChecker.areEqual


maybeRename()​

protected maybeRename(id, renameMap?): ASTIdentifier

Defined in: core/dist/visitors/equality-checker.d.ts:28

Returns id renamed according to renameMap, or id unchanged when the map is absent or does not contain an entry for id.

Parameters​

ParameterType
idASTIdentifier
renameMap?RenameMap

Returns​

ASTIdentifier

Inherited from​

EqualityChecker.maybeRename


processArray()​

protected processArray(arrA, arrB, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:43

Returns true only when arrA and arrB have the same length and every element pair compares equal via processItem.

Parameters​

ParameterType
arrAOpOrId[]
arrBOpOrId[]
argsEcDescentArgs

Returns​

boolean

Inherited from​

EqualityChecker.processArray


processItem()​

protected processItem(operator, __namedParameters): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:34

Compares operator against other, optionally applying renameMap to identifiers from other. Handles the special case where one side is a bare identifier and the other is an identity FnCall(ret1, [id]).

Parameters​

ParameterType
operatorOpOrId
__namedParameters{ ignoreLang: boolean; other: OpOrId; renameMap?: RenameMap; }
__namedParameters.ignoreLangboolean
__namedParameters.otherOpOrId
__namedParameters.renameMap?RenameMap

Returns​

boolean

Inherited from​

EqualityChecker.processItem


visitAggregate()​

visitAggregate(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:75

Parameters​

ParameterType
aAggregateCall
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitAggregate

Inherited from​

EqualityChecker.visitAggregate


visitBidirectionalRecursion()​

visitBidirectionalRecursion(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:81

Parameters​

ParameterType
aBidirectionalRecursion
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitBidirectionalRecursion

Inherited from​

EqualityChecker.visitBidirectionalRecursion


visitCalculation()​

visitCalculation(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:58

Parameters​

ParameterType
aCalculation
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitCalculation

Inherited from​

EqualityChecker.visitCalculation


visitCartesianProduct()​

visitCartesianProduct(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:60

Parameters​

ParameterType
aCartesianProduct
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitCartesianProduct

Inherited from​

EqualityChecker.visitCartesianProduct


visitConditional()​

visitConditional(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:59

Parameters​

ParameterType
aConditional
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitConditional

Inherited from​

EqualityChecker.visitConditional


visitDifference()​

visitDifference(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:72

Parameters​

ParameterType
aDifference
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitDifference

Inherited from​

EqualityChecker.visitDifference


visitDistinct()​

visitDistinct(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:73

Parameters​

ParameterType
aDistinct
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitDistinct

Inherited from​

EqualityChecker.visitDistinct


visitFnCall()​

visitFnCall(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:56

Parameters​

ParameterType
aFnCall
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitFnCall

Inherited from​

EqualityChecker.visitFnCall


visitGroupBy()​

visitGroupBy(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:67

Parameters​

ParameterType
aGroupBy
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitGroupBy

Inherited from​

EqualityChecker.visitGroupBy


visitIndexedRecursion()​

visitIndexedRecursion(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:80

Parameters​

ParameterType
aIndexedRecursion
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitIndexedRecursion

Inherited from​

EqualityChecker.visitIndexedRecursion


visitIndexScan()​

visitIndexScan(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:79

Parameters​

ParameterType
aIndexScan
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitIndexScan

Inherited from​

EqualityChecker.visitIndexScan


visitIntersection()​

visitIntersection(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:71

Parameters​

ParameterType
aIntersection
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitIntersection

Inherited from​

EqualityChecker.visitIntersection


visitItemFnSource()​

visitItemFnSource(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:76

Parameters​

ParameterType
aItemFnSource
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitItemFnSource

Inherited from​

EqualityChecker.visitItemFnSource


visitItemSource()​

visitItemSource(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:55

Parameters​

ParameterType
aItemSource
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitItemSource

Inherited from​

EqualityChecker.visitItemSource


visitJoin()​

visitJoin(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:61

Parameters​

ParameterType
aJoin
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitJoin

Inherited from​

EqualityChecker.visitJoin


visitLangSwitch()​

visitLangSwitch(a, args): boolean

Defined in: lang-sql/src/visitors/equality-checker.ts:20

Parameters​

ParameterType
aLangSwitch
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitLangSwitch


visitLimit()​

visitLimit(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:68

Parameters​

ParameterType
aLimit
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitLimit

Inherited from​

EqualityChecker.visitLimit


visitLiteral()​

visitLiteral(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:57

Parameters​

ParameterType
aLiteral
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitLiteral

Inherited from​

EqualityChecker.visitLiteral


visitMapFromItem()​

visitMapFromItem(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:64

Parameters​

ParameterType
aMapFromItem
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitMapFromItem

Inherited from​

EqualityChecker.visitMapFromItem


visitMapToItem()​

visitMapToItem(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:63

Parameters​

ParameterType
aMapToItem
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitMapToItem

Inherited from​

EqualityChecker.visitMapToItem


visitNullSource()​

visitNullSource(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:74

Parameters​

ParameterType
aNullSource
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitNullSource

Inherited from​

EqualityChecker.visitNullSource


visitOrderBy()​

visitOrderBy(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:66

Parameters​

ParameterType
aOrderBy
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitOrderBy

Inherited from​

EqualityChecker.visitOrderBy


visitProjection()​

visitProjection(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:52

Parameters​

ParameterType
aProjection
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitProjection

Inherited from​

EqualityChecker.visitProjection


visitProjectionConcat()​

visitProjectionConcat(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:62

Parameters​

ParameterType
aProjectionConcat
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitProjectionConcat

Inherited from​

EqualityChecker.visitProjectionConcat


visitProjectionIndex()​

visitProjectionIndex(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:65

Parameters​

ParameterType
aProjectionIndex
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitProjectionIndex

Inherited from​

EqualityChecker.visitProjectionIndex


visitQuantifier()​

visitQuantifier(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:78

Parameters​

ParameterType
aQuantifier
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitQuantifier

Inherited from​

EqualityChecker.visitQuantifier


visitRecursion()​

visitRecursion(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:51

Parameters​

ParameterType
aRecursion
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitRecursion

Inherited from​

EqualityChecker.visitRecursion


visitSelection()​

visitSelection(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:53

Parameters​

ParameterType
aSelection
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitSelection

Inherited from​

EqualityChecker.visitSelection


visitSetOp()​

protected visitSetOp(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:69

Parameters​

ParameterType
aSetOperator
argsEcDescentArgs

Returns​

boolean

Inherited from​

EqualityChecker.visitSetOp


visitTableAlias()​

visitTableAlias(operator, arg?): boolean

Defined in: lang-sql/src/visitors/equality-checker.ts:33

Parameters​

ParameterType
operatorTableAlias
arg?EcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitTableAlias


visitTupleFnSource()​

visitTupleFnSource(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:77

Parameters​

ParameterType
aTupleFnSource
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitTupleFnSource

Inherited from​

EqualityChecker.visitTupleFnSource


visitTupleSource()​

visitTupleSource(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:54

Parameters​

ParameterType
aTupleSource
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitTupleSource

Inherited from​

EqualityChecker.visitTupleSource


visitUnion()​

visitUnion(a, args): boolean

Defined in: core/dist/visitors/equality-checker.d.ts:70

Parameters​

ParameterType
aUnion
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitUnion

Inherited from​

EqualityChecker.visitUnion


visitUsing()​

visitUsing(a, args): boolean

Defined in: lang-sql/src/visitors/equality-checker.ts:24

Parameters​

ParameterType
aUsing
argsEcDescentArgs

Returns​

boolean

Implementation of​

SQLPlanVisitor.visitUsing