Package mondrian.olap

Interface FunDef

All Known Implementing Classes:
AbstractAggregateFunDef, AggregateFunDef, CachedExistsFunDef, CacheFunDef, CalculatedChildFunDef, CastFunDef, CoalesceEmptyFunDef, CrossJoinFunDef, ExistingFunDef, FunDefBase, HierarchyCurrentMemberFunDef, HierarchyDimensionFunDef, IifFunDef, JavaFunDef, LevelHierarchyFunDef, LevelMembersFunDef, LinReg, LinReg.InterceptFunDef, LinReg.PointFunDef, LinReg.R2FunDef, LinReg.SlopeFunDef, LinReg.VarianceFunDef, MemberHierarchyFunDef, MemberLevelFunDef, MemberOrderKeyFunDef, NamedSetCurrentFunDef, NamedSetCurrentOrdinalFunDef, NativizeSetFunDef, NonEmptyCrossJoinFunDef, NthQuartileFunDef, ParameterFunDef, ParenthesesFunDef, RankFunDef, SetFunDef, TupleFunDef, ValidMeasureFunDef, VisualTotalsFunDef

public interface FunDef
Definition of an MDX function. See also FunTable.
Author:
jhyde, 21 April, 1999
  • Method Details

    • getSyntax

      Syntax getSyntax()
      Returns the syntactic type of the function.
    • getName

      String getName()
      Returns the name of this function.
    • getDescription

      String getDescription()
      Returns the description of this function.
    • getReturnCategory

      int getReturnCategory()
      Returns the Category code of the value returned by this function.
    • getParameterCategories

      int[] getParameterCategories()
      Returns the types of the arguments of this function. Values are the same as those returned by Exp.getCategory(). The 0th argument of methods and properties are the object they are applied to. Infix operators have two arguments, and prefix operators have one argument.
    • createCall

      Exp createCall(Validator validator, Exp[] args)
      Creates an expression which represents a call to this function with a given set of arguments. The result is usually a ResolvedFunCall but not always.
    • getSignature

      String getSignature()
      Returns an English description of the signature of the function, for example "<Numeric Expression> / <Numeric Expression>".
    • unparse

      void unparse(Exp[] args, PrintWriter pw)
      Converts a function call into MDX source code.
    • compileCall

      Calc compileCall(ResolvedFunCall call, ExpCompiler compiler)
      Converts a call to this function into executable objects.

      The result must implement the appropriate interface for the result type. For example, a function which returns an integer must return an object which implements IntegerCalc.