Class: XQueryAttributeRenameChecker
Defined in: lang-xquery/src/visitors/attr-rename-checker.ts:14
Extends AttributeRenameChecker to handle the XQuery-specific TreeJoin and ProjectionSize plan operators.
Extends
Implements
XQueryPlanVisitor<boolean,ArcDescentArgs>
Constructors
Constructor
new XQueryAttributeRenameChecker(
vmap,db):XQueryAttributeRenameChecker
Defined in: lang-xquery/src/visitors/attr-rename-checker.ts:18
Parameters
| Parameter | Type |
|---|---|
vmap | Record<string, PlanVisitor<boolean, ArcDescentArgs>> |
db | DortDBAsFriend |
Returns
XQueryAttributeRenameChecker
Overrides
AttributeRenameChecker.constructor
Properties
db
protecteddb:DortDBAsFriend
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:22
Database instance providing access to the language manager.
Inherited from
tdepsVmap
protectedtdepsVmap:Record<string,TransitiveDependencies>
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:24
Per-language TransitiveDependencies visitor map, used to detect rename conflicts.
Inherited from
AttributeRenameChecker.tdepsVmap
vmap
protectedvmap:Record<string,PlanVisitor<boolean,ArcDescentArgs>>
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:20
Per-language visitor map used for recursive descent.
Inherited from
Methods
canRename()
canRename(
plan,renamesInv):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:34
Returns true if applying args (an inverse rename map) to plan is safe,
i.e. no attribute referenced in the subtree would be ambiguously renamed.
Parameters
| Parameter | Type |
|---|---|
plan | PlanOperator |
renamesInv | RenameMap |
Returns
boolean
Inherited from
AttributeRenameChecker.canRename
checkAttrs()
protectedcheckAttrs(attrs,verticalCtx,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:51
Verifies that none of the projection attrs has its output identifier in args
(unless it is a trivial identity alias), and that all computed attr expressions pass
the horizontal rename check.
Parameters
| Parameter | Type |
|---|---|
attrs | Aliased<ASTIdentifier | Calculation>[] |
verticalCtx | IdSet |
args | ArcDescentArgs |
Returns
boolean
Inherited from
AttributeRenameChecker.checkAttrs
checkHorizontal()
protectedcheckHorizontal(horizontal,verticalCtx,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:40
Checks whether horizontal (an expression computed from the current row) can be
safely renamed: its transitive dependencies outside verticalCtx must not overlap with
any renamed attribute, and the expression itself must pass the rename check.
Parameters
| Parameter | Type |
|---|---|
horizontal | PlanOperator |
verticalCtx | IdSet |
args | ArcDescentArgs |
Returns
boolean
Inherited from
AttributeRenameChecker.checkHorizontal
checkHorizontalArray()
protectedcheckHorizontalArray(horizontal,verticalCtx,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:45
Calls checkHorizontal for every non-identifier element of horizontal,
returning false as soon as any element fails the rename check.
Parameters
| Parameter | Type |
|---|---|
horizontal | OpOrId[] |
verticalCtx | IdSet |
args | ArcDescentArgs |
Returns
boolean
Inherited from
AttributeRenameChecker.checkHorizontalArray
checkVerticalArray()
protectedcheckVerticalArray(vertical,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:56
Calls the rename check for every non-identifier element of vertical (expression
arguments), returning false as soon as any element fails.
Parameters
| Parameter | Type |
|---|---|
vertical | OpOrId[] |
args | ArcDescentArgs |
Returns
boolean
Inherited from
AttributeRenameChecker.checkVerticalArray
visitAggregate()
visitAggregate(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:81
Parameters
| Parameter | Type |
|---|---|
operator | AggregateCall |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitAggregate
Inherited from
AttributeRenameChecker.visitAggregate
visitBidirectionalRecursion()
visitBidirectionalRecursion(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:87
Parameters
| Parameter | Type |
|---|---|
operator | BidirectionalRecursion |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitBidirectionalRecursion
Inherited from
AttributeRenameChecker.visitBidirectionalRecursion
visitCalculation()
visitCalculation(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:64
Parameters
| Parameter | Type |
|---|---|
operator | Calculation |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitCalculation
Inherited from
AttributeRenameChecker.visitCalculation
visitCartesianProduct()
visitCartesianProduct(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:66
Parameters
| Parameter | Type |
|---|---|
operator | CartesianProduct |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitCartesianProduct
Inherited from
AttributeRenameChecker.visitCartesianProduct
visitConditional()
visitConditional(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:65
Parameters
| Parameter | Type |
|---|---|
operator | Conditional |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitConditional
Inherited from
AttributeRenameChecker.visitConditional
visitDifference()
visitDifference(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:78
Parameters
| Parameter | Type |
|---|---|
operator | Difference |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitDifference
Inherited from
AttributeRenameChecker.visitDifference
visitDistinct()
visitDistinct(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:79
Parameters
| Parameter | Type |
|---|---|
operator | Distinct |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitDistinct
Inherited from
AttributeRenameChecker.visitDistinct
visitFnCall()
visitFnCall(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:62
Parameters
| Parameter | Type |
|---|---|
operator | FnCall |
args | ArcDescentArgs |
Returns
boolean
Implementation of
Inherited from
AttributeRenameChecker.visitFnCall
visitGroupBy()
visitGroupBy(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:73
Parameters
| Parameter | Type |
|---|---|
operator | GroupBy |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitGroupBy
Inherited from
AttributeRenameChecker.visitGroupBy
visitIndexedRecursion()
visitIndexedRecursion(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:86
Parameters
| Parameter | Type |
|---|---|
operator | IndexedRecursion |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitIndexedRecursion
Inherited from
AttributeRenameChecker.visitIndexedRecursion
visitIndexScan()
visitIndexScan(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:85
Parameters
| Parameter | Type |
|---|---|
operator | IndexScan |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitIndexScan
Inherited from
AttributeRenameChecker.visitIndexScan
visitIntersection()
visitIntersection(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:77
Parameters
| Parameter | Type |
|---|---|
operator | Intersection |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitIntersection
Inherited from
AttributeRenameChecker.visitIntersection
visitItemFnSource()
visitItemFnSource(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:82
Parameters
| Parameter | Type |
|---|---|
operator | ItemFnSource |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitItemFnSource
Inherited from
AttributeRenameChecker.visitItemFnSource
visitItemSource()
visitItemSource(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:61
Parameters
| Parameter | Type |
|---|---|
operator | ItemSource |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitItemSource
Inherited from
AttributeRenameChecker.visitItemSource
visitJoin()
visitJoin(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:67
Parameters
| Parameter | Type |
|---|---|
operator | Join |
args | ArcDescentArgs |
Returns
boolean
Implementation of
Inherited from
AttributeRenameChecker.visitJoin
visitLimit()
visitLimit(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:74
Parameters
| Parameter | Type |
|---|---|
operator | Limit |
args | ArcDescentArgs |
Returns
boolean
Implementation of
Inherited from
AttributeRenameChecker.visitLimit
visitLiteral()
visitLiteral(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:63
Parameters
| Parameter | Type |
|---|---|
operator | Literal |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitLiteral
Inherited from
AttributeRenameChecker.visitLiteral
visitMapFromItem()
visitMapFromItem(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:70
Parameters
| Parameter | Type |
|---|---|
operator | MapFromItem |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitMapFromItem
Inherited from
AttributeRenameChecker.visitMapFromItem
visitMapToItem()
visitMapToItem(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:69
Parameters
| Parameter | Type |
|---|---|
operator | MapToItem |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitMapToItem
Inherited from
AttributeRenameChecker.visitMapToItem
visitNullSource()
visitNullSource(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:80
Parameters
| Parameter | Type |
|---|---|
operator | NullSource |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitNullSource
Inherited from
AttributeRenameChecker.visitNullSource
visitOrderBy()
visitOrderBy(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:72
Parameters
| Parameter | Type |
|---|---|
operator | OrderBy |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitOrderBy
Inherited from
AttributeRenameChecker.visitOrderBy
visitProjection()
visitProjection(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:58
Parameters
| Parameter | Type |
|---|---|
operator | Projection |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitProjection
Inherited from
AttributeRenameChecker.visitProjection
visitProjectionConcat()
visitProjectionConcat(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:68
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionConcat |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitProjectionConcat
Inherited from
AttributeRenameChecker.visitProjectionConcat
visitProjectionIndex()
visitProjectionIndex(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:71
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionIndex |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitProjectionIndex
Inherited from
AttributeRenameChecker.visitProjectionIndex
visitProjectionSize()
visitProjectionSize(
operator,args):boolean
Defined in: lang-xquery/src/visitors/attr-rename-checker.ts:30
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionSize |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitProjectionSize
visitQuantifier()
visitQuantifier(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:84
Parameters
| Parameter | Type |
|---|---|
operator | Quantifier |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitQuantifier
Inherited from
AttributeRenameChecker.visitQuantifier
visitRecursion()
visitRecursion(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:57
Parameters
| Parameter | Type |
|---|---|
operator | Recursion |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitRecursion
Inherited from
AttributeRenameChecker.visitRecursion
visitSelection()
visitSelection(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:59
Parameters
| Parameter | Type |
|---|---|
operator | Selection |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitSelection
Inherited from
AttributeRenameChecker.visitSelection
visitSetOp()
protectedvisitSetOp(operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:75
Parameters
| Parameter | Type |
|---|---|
operator | SetOperator |
args | ArcDescentArgs |
Returns
boolean
Inherited from
AttributeRenameChecker.visitSetOp
visitTreeJoin()
visitTreeJoin(
operator,args):boolean
Defined in: lang-xquery/src/visitors/attr-rename-checker.ts:24
Parameters
| Parameter | Type |
|---|---|
operator | TreeJoin |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitTreeJoin
visitTupleFnSource()
visitTupleFnSource(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:83
Parameters
| Parameter | Type |
|---|---|
operator | TupleFnSource |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitTupleFnSource
Inherited from
AttributeRenameChecker.visitTupleFnSource
visitTupleSource()
visitTupleSource(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:60
Parameters
| Parameter | Type |
|---|---|
operator | TupleSource |
args | ArcDescentArgs |
Returns
boolean
Implementation of
XQueryPlanVisitor.visitTupleSource
Inherited from
AttributeRenameChecker.visitTupleSource
visitUnion()
visitUnion(
operator,args):boolean
Defined in: core/dist/visitors/attribute-rename-checker.d.ts:76
Parameters
| Parameter | Type |
|---|---|
operator | Union |
args | ArcDescentArgs |
Returns
boolean