Package mondrian.olap.fun
Class MemberExtractingVisitor
java.lang.Object
mondrian.mdx.MdxVisitorImpl
mondrian.olap.fun.MemberExtractingVisitor
- All Implemented Interfaces:
MdxVisitor
Visitor which collects any non-measure base members encountered while
traversing an expression.
This Visitor is used by the native set classes as well as the crossjoin optimizer (CrossjoinFunDef.nonEmptyList) to identify members within an expression which may conflict with members used as a constraint.
If the boolean mapToAllMember is true, then any occurrences of a Dimension/Hierarchy/Level will result in the corresponding [All] member being added to the collection. Likewise if a specific member is visited, the [All] member of it's corresponding hierarchy will be added.
The mapToAllMember behavior will be used for any subexpression under one of the functions in the blacklist collection below.
-
Constructor Summary
ConstructorDescriptionMemberExtractingVisitor
(Set<Member> memberSet, ResolvedFunCall call, boolean mapToAllMember) -
Method Summary
Modifier and TypeMethodDescriptionvisit
(DimensionExpr dimensionExpr) Visits a DimensionExpr.visit
(HierarchyExpr hierarchyExpr) Visits a HierarchyExpr.Visits a LevelExpr.visit
(MemberExpr memberExpr) Visits a MemberExpr.visit
(ParameterExpr parameterExpr) Visits a Parameter.visit
(ResolvedFunCall funCall) Visits a ResolvedFunCall.Methods inherited from class mondrian.mdx.MdxVisitorImpl
shouldVisitChildren, turnOffVisitChildren, turnOnVisitChildren, visit, visit, visit, visit, visit, visit, visit, visitArray
-
Constructor Details
-
MemberExtractingVisitor
-
-
Method Details
-
visit
Description copied from interface:MdxVisitor
Visits a Parameter.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-
visit
Description copied from interface:MdxVisitor
Visits a MemberExpr.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-
visit
Description copied from interface:MdxVisitor
Visits a DimensionExpr.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-
visit
Description copied from interface:MdxVisitor
Visits a HierarchyExpr.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-
visit
Description copied from interface:MdxVisitor
Visits a LevelExpr.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-
visit
Description copied from interface:MdxVisitor
Visits a ResolvedFunCall.- Specified by:
visit
in interfaceMdxVisitor
- Overrides:
visit
in classMdxVisitorImpl
- See Also:
-