mondrian.olap.fun
Class SetFunDef.MemberSetListCalc
java.lang.Object
mondrian.calc.impl.AbstractCalc
mondrian.calc.impl.AbstractMemberListCalc
mondrian.olap.fun.SetFunDef.MemberSetListCalc
- All Implemented Interfaces:
- Calc, ListCalc, MemberListCalc
- Enclosing class:
- SetFunDef
public static class SetFunDef.MemberSetListCalc
- extends AbstractMemberListCalc
Compiled expression to implement the MDX set function, { ...
}
, applied to a set of members, as a list.
The set function can contain expressions which yield sets together
with expressions which yield individual members, provided that
they all have the same type. It automatically removes null members
from the list.
The implementation uses VoidCalc
objects with side-effects
to avoid generating lots of intermediate lists.
SetFunDef.MemberSetListCalc
public SetFunDef.MemberSetListCalc(Exp exp,
Exp[] args,
ExpCompiler compiler,
List<ResultStyle> resultStyles)
getCalcs
public Calc[] getCalcs()
- Description copied from class:
AbstractCalc
- Returns this expression's child expressions.
- Overrides:
getCalcs
in class AbstractCalc
evaluateMemberList
public List<Member> evaluateMemberList(Evaluator evaluator)
- Description copied from interface:
MemberListCalc
- Evaluates an expression to yield a list of members.
The list is immutable if Calc.getResultStyle()
yields
ResultStyle.MUTABLE_LIST
. Otherwise,
the caller must not modify the list.
- Parameters:
evaluator
- Evaluation context
- Returns:
- A list of members, never null.