Class: XQueryAttributeRenamer
Defined in: lang-xquery/src/visitors/attr-renamer.ts:14
Extends AttributeRenamer to apply column renames inside TreeJoin step expressions and to propagate renames through ProjectionSize operators.
Extends
Implements
XQueryPlanVisitor<void,Translations>
Constructors
Constructor
new XQueryAttributeRenamer(
vmap,db):XQueryAttributeRenamer
Defined in: lang-xquery/src/visitors/attr-renamer.ts:18
Parameters
| Parameter | Type |
|---|---|
vmap | Record<string, PlanVisitor<void, Translations>> |
db | DortDBAsFriend |
Returns
XQueryAttributeRenamer
Overrides
Properties
db
protecteddb:DortDBAsFriend
Defined in: core/dist/visitors/attribute-renamer.d.ts:16
Database instance providing access to the language manager.
Inherited from
tdepsVmap
protectedtdepsVmap:Record<string,TransitiveDependencies>
Defined in: core/dist/visitors/attribute-renamer.d.ts:18
Per-language TransitiveDependencies visitor map, used to invalidate the cache after renaming.
Inherited from
varMappers
protectedvarMappers:Record<string,VariableMapper>
Defined in: core/dist/visitors/attribute-renamer.d.ts:20
Per-language VariableMapper map, used for variable mapping.
Inherited from
vmap
protectedvmap:Record<string,PlanVisitor<void,Translations>>
Defined in: core/dist/visitors/attribute-renamer.d.ts:14
Per-language visitor map used for recursive descent.
Inherited from
Methods
prepareTranslations()
protectedprepareTranslations(ctx,renames):Translations
Defined in: core/dist/visitors/attribute-renamer.d.ts:38
Prepares variable map for renaming by reversing the translation map from the variable-mapper context.
Parameters
| Parameter | Type |
|---|---|
ctx | VariableMapperCtx |
renames | RenameMap |
Returns
Inherited from
AttributeRenamer.prepareTranslations
prepareVarMapCtx()
protectedprepareVarMapCtx(renames):VariableMapperCtx
Defined in: core/dist/visitors/attribute-renamer.d.ts:34
First, the whole plan is mapped to numeric indexes. This method prepares the context for that mapping.
Parameters
| Parameter | Type |
|---|---|
renames | RenameMap |
Returns
Inherited from
AttributeRenamer.prepareVarMapCtx
processArray()
protectedprocessArray(array,translations,containingOp,updateFn?):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:47
Iterates array in place, replacing each ASTIdentifier element with
its renamed version.
Parameters
| Parameter | Type | Description |
|---|---|---|
array | OpOrId[] | - |
translations | Translations | - |
containingOp | PlanOperator | - |
updateFn? | (newId, i) => void | Optional callback used instead of direct array assignment when the renamed identifier lives in a wrapper object (e.g. a projection pair). |
Returns
void
Inherited from
processItem()
protectedprocessItem<Key,Obj>(obj,key,translations,containingOp):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:52
Renames a single property obj[key] in place when it is an
ASTIdentifier; otherwise recurses into the operator.
Type Parameters
| Type Parameter |
|---|
Key extends string |
Obj extends Record<Key, OpOrId> |
Parameters
| Parameter | Type |
|---|---|
obj | Obj |
key | Key |
translations | Translations |
containingOp | PlanOperator |
Returns
void
Inherited from
rename()
rename(
plan,renames):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:30
Applies translations to plan in place and invalidates the transitive-dependency cache
for the entire subtree rooted at plan.
Parameters
| Parameter | Type |
|---|---|
plan | PlanOperator |
renames | RenameMap |
Returns
void
Inherited from
renameIdentifier()
protectedrenameIdentifier(id,varmap):ASTIdentifier
Defined in: core/dist/visitors/attribute-renamer.d.ts:40
Rename a single identifier, keeping references to aggregates
Parameters
| Parameter | Type |
|---|---|
id | ASTIdentifier |
varmap | VariableMap |
Returns
Inherited from
AttributeRenamer.renameIdentifier
visitAggregate()
visitAggregate(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:77
Parameters
| Parameter | Type |
|---|---|
operator | AggregateCall |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitAggregate
Inherited from
AttributeRenamer.visitAggregate
visitBidirectionalRecursion()
visitBidirectionalRecursion(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:83
Parameters
| Parameter | Type |
|---|---|
operator | BidirectionalRecursion |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitBidirectionalRecursion
Inherited from
AttributeRenamer.visitBidirectionalRecursion
visitCalculation()
visitCalculation(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:60
Parameters
| Parameter | Type |
|---|---|
operator | Calculation |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitCalculation
Inherited from
AttributeRenamer.visitCalculation
visitCartesianProduct()
visitCartesianProduct(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:62
Parameters
| Parameter | Type |
|---|---|
operator | CartesianProduct |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitCartesianProduct
Inherited from
AttributeRenamer.visitCartesianProduct
visitConditional()
visitConditional(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:61
Parameters
| Parameter | Type |
|---|---|
operator | Conditional |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitConditional
Inherited from
AttributeRenamer.visitConditional
visitDifference()
visitDifference(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:74
Parameters
| Parameter | Type |
|---|---|
operator | Difference |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitDifference
Inherited from
AttributeRenamer.visitDifference
visitDistinct()
visitDistinct(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:75
Parameters
| Parameter | Type |
|---|---|
operator | Distinct |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitDistinct
Inherited from
AttributeRenamer.visitDistinct
visitFnCall()
visitFnCall(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:58
Parameters
| Parameter | Type |
|---|---|
operator | FnCall |
translations | Translations |
Returns
void
Implementation of
Inherited from
visitGroupBy()
visitGroupBy(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:69
Parameters
| Parameter | Type |
|---|---|
operator | GroupBy |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitGroupBy
Inherited from
visitIndexedRecursion()
visitIndexedRecursion(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:82
Parameters
| Parameter | Type |
|---|---|
operator | IndexedRecursion |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitIndexedRecursion
Inherited from
AttributeRenamer.visitIndexedRecursion
visitIndexScan()
visitIndexScan(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:81
Parameters
| Parameter | Type |
|---|---|
operator | IndexScan |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitIndexScan
Inherited from
AttributeRenamer.visitIndexScan
visitIntersection()
visitIntersection(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:73
Parameters
| Parameter | Type |
|---|---|
operator | Intersection |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitIntersection
Inherited from
AttributeRenamer.visitIntersection
visitItemFnSource()
visitItemFnSource(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:78
Parameters
| Parameter | Type |
|---|---|
operator | ItemFnSource |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitItemFnSource
Inherited from
AttributeRenamer.visitItemFnSource
visitItemSource()
visitItemSource(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:57
Parameters
| Parameter | Type |
|---|---|
operator | ItemSource |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitItemSource
Inherited from
AttributeRenamer.visitItemSource
visitJoin()
visitJoin(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:63
Parameters
| Parameter | Type |
|---|---|
operator | Join |
translations | Translations |
Returns
void
Implementation of
Inherited from
visitLimit()
visitLimit(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:70
Parameters
| Parameter | Type |
|---|---|
operator | Limit |
translations | Translations |
Returns
void
Implementation of
Inherited from
visitLiteral()
visitLiteral(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:59
Parameters
| Parameter | Type |
|---|---|
operator | Literal |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitLiteral
Inherited from
visitMapFromItem()
visitMapFromItem(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:66
Parameters
| Parameter | Type |
|---|---|
operator | MapFromItem |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitMapFromItem
Inherited from
AttributeRenamer.visitMapFromItem
visitMapToItem()
visitMapToItem(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:65
Parameters
| Parameter | Type |
|---|---|
operator | MapToItem |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitMapToItem
Inherited from
AttributeRenamer.visitMapToItem
visitNullSource()
visitNullSource(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:76
Parameters
| Parameter | Type |
|---|---|
operator | NullSource |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitNullSource
Inherited from
AttributeRenamer.visitNullSource
visitOrderBy()
visitOrderBy(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:68
Parameters
| Parameter | Type |
|---|---|
operator | OrderBy |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitOrderBy
Inherited from
visitProjection()
visitProjection(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:54
Parameters
| Parameter | Type |
|---|---|
operator | Projection |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitProjection
Inherited from
AttributeRenamer.visitProjection
visitProjectionConcat()
visitProjectionConcat(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:64
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionConcat |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitProjectionConcat
Inherited from
AttributeRenamer.visitProjectionConcat
visitProjectionIndex()
visitProjectionIndex(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:67
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionIndex |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitProjectionIndex
Inherited from
AttributeRenamer.visitProjectionIndex
visitProjectionSize()
visitProjectionSize(
operator,translations):void
Defined in: lang-xquery/src/visitors/attr-renamer.ts:28
Parameters
| Parameter | Type |
|---|---|
operator | ProjectionSize |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitProjectionSize
visitQuantifier()
visitQuantifier(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:80
Parameters
| Parameter | Type |
|---|---|
operator | Quantifier |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitQuantifier
Inherited from
AttributeRenamer.visitQuantifier
visitRecursion()
visitRecursion(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:53
Parameters
| Parameter | Type |
|---|---|
operator | Recursion |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitRecursion
Inherited from
AttributeRenamer.visitRecursion
visitSelection()
visitSelection(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:55
Parameters
| Parameter | Type |
|---|---|
operator | Selection |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitSelection
Inherited from
AttributeRenamer.visitSelection
visitSetOp()
visitSetOp(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:71
Parameters
| Parameter | Type |
|---|---|
operator | SetOperator |
translations | Translations |
Returns
void
Inherited from
visitTreeJoin()
visitTreeJoin(
operator,translations):void
Defined in: lang-xquery/src/visitors/attr-renamer.ts:24
Parameters
| Parameter | Type |
|---|---|
operator | TreeJoin |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitTreeJoin
visitTupleFnSource()
visitTupleFnSource(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:79
Parameters
| Parameter | Type |
|---|---|
operator | TupleFnSource |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitTupleFnSource
Inherited from
AttributeRenamer.visitTupleFnSource
visitTupleSource()
visitTupleSource(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:56
Parameters
| Parameter | Type |
|---|---|
operator | TupleSource |
translations | Translations |
Returns
void
Implementation of
XQueryPlanVisitor.visitTupleSource
Inherited from
AttributeRenamer.visitTupleSource
visitUnion()
visitUnion(
operator,translations):void
Defined in: core/dist/visitors/attribute-renamer.d.ts:72
Parameters
| Parameter | Type |
|---|---|
operator | Union |
translations | Translations |
Returns
void