Package mondrian.calc.impl
Class AbstractListCalc
java.lang.Object
mondrian.calc.impl.AbstractCalc
mondrian.calc.impl.AbstractListCalc
- Direct Known Subclasses:
IterableListCalc,NativizeSetFunDef.NativeListCalc,SetFunDef.SetListCalc
Abstract implementation of the
ListCalc interface.
The derived class must
implement the ListCalc.evaluateList(mondrian.olap.Evaluator) method, and the evaluate(mondrian.olap.Evaluator) method will call it.
- Since:
- Sep 27, 2005
- Author:
- jhyde
-
Field Summary
Fields inherited from class mondrian.calc.impl.AbstractCalc
exp, type -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractListCalc(Exp exp, Calc[] calcs) Creates an abstract implementation of a compiled expression which returns a mutable list of tuples.protectedAbstractListCalc(Exp exp, Calc[] calcs, boolean mutable) Creates an abstract implementation of a compiled expression which returns a list. -
Method Summary
Modifier and TypeMethodDescriptionfinal ObjectEvaluates this expression.evaluateIterable(Evaluator evaluator) Evaluates an expression to yield an Iterable of members or tuples.Returns style in which the result of evaluating this expression is returned.getType()Returns the type of this expression.toString()Methods inherited from class mondrian.calc.impl.AbstractCalc
accept, anyDepends, anyDependsButFirst, butDepends, collectArguments, dependsOn, getArguments, getCalcs, getName, isWrapperFor, simplifyEvaluator, unwrapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface mondrian.calc.Calc
accept, dependsOn, isWrapperFor, unwrapMethods inherited from interface mondrian.calc.ListCalc
evaluateList
-
Constructor Details
-
AbstractListCalc
Creates an abstract implementation of a compiled expression which returns a mutable list of tuples.- Parameters:
exp- Expression which was compiledcalcs- List of child compiled expressions (for dependency analysis)
-
AbstractListCalc
Creates an abstract implementation of a compiled expression which returns a list.- Parameters:
exp- Expression which was compiledcalcs- List of child compiled expressions (for dependency analysis)mutable- Whether the list is mutable
-
-
Method Details
-
getType
Description copied from interface:CalcReturns the type of this expression.- Specified by:
getTypein interfaceCalc- Overrides:
getTypein classAbstractCalc
-
evaluate
Description copied from interface:CalcEvaluates this expression. -
evaluateIterable
Description copied from interface:IterCalcEvaluates an expression to yield an Iterable of members or tuples.The Iterable is immutable.
- Specified by:
evaluateIterablein interfaceIterCalc- Parameters:
evaluator- Evaluation context- Returns:
- An Iterable of members or tuples, never null.
-
getResultStyle
Description copied from interface:CalcReturns style in which the result of evaluating this expression is returned.One 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.
- Specified by:
getResultStylein interfaceCalc- Overrides:
getResultStylein classAbstractCalc- See Also:
-
toString
-