## org.pentaho.reporting.libraries.formula.function
Interface Function

All Superinterfaces:
  java.io.Serializable

All Known Implementing Classes:
  AbsFunction, AcosFunction, AcoshFunction, AndFunction, AsinFunction, Atan2Function, AtanFunction, AverageAFunction, AverageFunction, ChooseFunction, CosFunction, CountAFunction, CountBlankFunction, CountFunction, CsvArrayFunction, CsvTextFunction, DateDifFunction, DateFunction, DateValueFunction, DayFunction, DaysFunction, EvenFunction, ExactFunction, ExpFunction, FalseFunction, FindFunction, HasChangedFunction, HourFunction, IfFunction, IfNaFunction, IndexFunction, IntFunction, IsBlankFunction, IsErrFunction, IsErrorFunction, IsEvenFunction, IsLogicalFunction, IsNaFunction, IsNonTextFunction, IsNumberFunction, IsOddFunction, IsRefFunction, IsTextFunction, LeftFunction, LenFunction, LnFunction, Log10Function, LogFunction, LowerFunction, MaxAFunction, MaxFunction, MessageFunction, MidFunction, MinAFunction, MinFunction, MinuteFunction, ModFunction, MonthFunction, NaFunction, NormalizeArrayFunction, NotFunction, NowFunction, NullFunction, OddFunction, OrFunction, ParseDateFunction, PiFunction, PowerFunction, ReplaceFunction, ReptFunction, RightFunction, SecondFunction, SinFunction, SqrtFunction, SubstituteFunction, SumAFunction, SumFunction, TextFunction, TFunction, TimeFunction, TimeValueFunction, TodayFunction, TrimFunction, TrueFunction, UnicharFunction, UnicodeFunction, UpperFunction, URLEncodeFunction, ValueFunction, VarFunction, WeekDayFunction, XorFunction, YearFunction

    public interface Function

extends java.io.Serializable

A function is an arbitary computation. A return value type is not available unless the function has been evaluated. Functions must be stateless, that means: Calling the same function with exactly the same parameters must always result in the same computed value.

Author:
  Thomas Morgner

Method Summary
`TypeValuePair` `evaluate(FormulaContext context, ParameterCallback parameters)`
`java.lang.String` `getCanonicalName()`

Method Detail

### getCanonicalName

    java.lang.String getCanonicalName()

### evaluate

    TypeValuePair evaluate(FormulaContext context,
                           ParameterCallback parameters)
                           throws EvaluationException

  Throws:
    `EvaluationException`