|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmondrian.olap.fun.NativizeSetFunDef.NonNativeCalc
static class NativizeSetFunDef.NonNativeCalc
| Field Summary | |
|---|---|
(package private) boolean |
nativeEnabled
|
(package private) Calc |
parent
|
| Constructor Summary | |
|---|---|
protected |
NativizeSetFunDef.NonNativeCalc(Calc parent,
boolean nativeEnabled)
|
| Method Summary | ||
|---|---|---|
void |
accept(CalcWriter calcWriter)
Prints this expression, by accepting a visiting CalcWriter. |
|
boolean |
dependsOn(Hierarchy hierarchy)
Returns whether this expression depends upon a given hierarchy. |
|
Object |
evaluate(Evaluator evaluator)
Evaluates this expression. |
|
ResultStyle |
getResultStyle()
Returns style in which the result of evaluating this expression is returned. |
|
Type |
getType()
Returns the type of this expression. |
|
boolean |
isWrapperFor(Class<?> iface)
Default implementation just does 'instanceof TargetClass'. |
|
|
unwrap(Class<T> iface)
Default implementation just casts to TargetClass. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
final Calc parent
final boolean nativeEnabled
| Constructor Detail |
|---|
protected NativizeSetFunDef.NonNativeCalc(Calc parent,
boolean nativeEnabled)
| Method Detail |
|---|
public Object evaluate(Evaluator evaluator)
Calc
evaluate in interface Calcevaluator - Provides dimensional context in which to evaluate
this expression
public boolean dependsOn(Hierarchy hierarchy)
CalcIf 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 Calchierarchy - Hierarchy
public Type getType()
Calc
getType in interface Calcpublic void accept(CalcWriter calcWriter)
CalcCalcWriter.
accept in interface CalccalcWriter - Writerpublic ResultStyle getResultStyle()
CalcOne application of this method is for the compiler to figure out whether the compiled expression is returning a mutable list. If a mutable list is required, the compiler can create a mutable copy.
getResultStyle in interface CalcExpCompiler.compileList(mondrian.olap.Exp, boolean)public boolean isWrapperFor(Class<?> iface)
isWrapperFor in interface Calcpublic <T> T unwrap(Class<T> iface)
unwrap in interface Calc
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||