public static class HierarchyCurrentMemberFunDef.CalcImpl extends AbstractMemberCalc
exp, type
Constructor and Description |
---|
CalcImpl(Exp exp,
HierarchyCalc hierarchyCalc) |
Modifier and Type | Method and Description |
---|---|
boolean |
dependsOn(Hierarchy hierarchy)
Returns whether this expression depends upon a given hierarchy.
|
Member |
evaluateMember(Evaluator evaluator)
Evaluates this expression to yield a member.
|
protected String |
getName()
Returns the name of this expression type, used when serializing an
expression to a string.
|
evaluate
accept, anyDepends, anyDependsButFirst, butDepends, collectArguments, getArguments, getCalcs, getResultStyle, getType, isWrapperFor, simplifyEvaluator, unwrap
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
accept, getResultStyle, getType, isWrapperFor, unwrap
public CalcImpl(Exp exp, HierarchyCalc hierarchyCalc)
protected String getName()
AbstractCalc
The default implementation tries to extract a name from a function call, if any, then prints the last part of the class name.
getName
in class AbstractCalc
public Member evaluateMember(Evaluator evaluator)
MemberCalc
May return the null member (see
Hierarchy.getNullMember()
) but never null.
evaluator
- Evaluation contextpublic boolean dependsOn(Hierarchy hierarchy)
Calc
If it does not depend on the hierarchy, then re-evaluating the expression with a different member of this context must produce the same answer.
Some examples:[Measures].[Unit Sales]
depends on all dimensions except [Measures]
.
([Measures].[Unit Sales],
[Time].[1997]) > 1000
depends on all hierarchies except [Measures] and [Time].
Filter([Store].[USA].Children,
[Measures].[Unit Sales] < 50)
depends upon all hierarchies except [Store] and [Measures].
How so? Normally the scalar expression would depend upon all hierarchies
except [Measures], but the Filter
function sets the [Store]
context before evaluating the scalar expression, so it is not inherited
from the surrounding context.
dependsOn
in interface Calc
dependsOn
in class AbstractCalc
hierarchy
- HierarchyCopyright © 2019 Hitachi Vantara. All rights reserved.