Class FunTableImpl

java.lang.Object
mondrian.olap.fun.FunTableImpl
All Implemented Interfaces:
FunTable
Direct Known Subclasses:
BuiltinFunTable, CustomizedFunctionTable, GlobalFunTable

public abstract class FunTableImpl extends Object implements FunTable
Abstract implementation of FunTable.

The derived class must implement FunTable.defineFunctions(mondrian.olap.FunTable.Builder) to define each function which will be recognized by this table. This method is called from the constructor, after which point, no further functions can be added.

  • Constructor Details

    • FunTableImpl

      protected FunTableImpl()
      Creates a FunTableImpl.
  • Method Details

    • init

      public final void init()
      Initializes the function table.
    • getReservedWords

      public List<String> getReservedWords()
      Description copied from interface: FunTable
      Returns a list of words (String) which may not be used as identifiers.
      Specified by:
      getReservedWords in interface FunTable
    • isReserved

      public boolean isReserved(String s)
      Description copied from interface: FunTable
      Returns whether a string is a reserved word.
      Specified by:
      isReserved in interface FunTable
    • getResolvers

      public List<Resolver> getResolvers()
      Description copied from interface: FunTable
      Returns a list of Resolver objects.
      Specified by:
      getResolvers in interface FunTable
    • isProperty

      public boolean isProperty(String s)
      Description copied from interface: FunTable
      Returns whether a string is a property-style (postfix) operator. This is used during parsing to disambiguate functions from unquoted member names.
      Specified by:
      isProperty in interface FunTable
    • getFunInfoList

      public List<FunInfo> getFunInfoList()
      Description copied from interface: FunTable
      Returns a list of FunInfo objects.
      Specified by:
      getFunInfoList in interface FunTable
    • getResolvers

      public List<Resolver> getResolvers(String name, Syntax syntax)
      Description copied from interface: FunTable
      Returns a list of resolvers for an operator with a given name and syntax. Never returns null; if there are no resolvers, returns the empty list.
      Specified by:
      getResolvers in interface FunTable
      Parameters:
      name - Operator name
      syntax - Operator syntax
      Returns:
      List of resolvers for the operator