org.apache.poi.ss.formula.eval

## Class FunctionEval

- java.lang.Object
- - org.apache.poi.ss.formula.eval.FunctionEval

-     public final class FunctionEval
      extends java.lang.Object

  Mappings from the Excel functions to our evaluation implementations (where available)

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static Function[]` | `functions` Array elements corresponding to unimplemented functions are `null`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Function` | `getBasicFunction(int functionIndex)`
    `static java.util.Collection<java.lang.String>` | `getNotSupportedFunctionNames()` Returns an array of function names NOT implemented by POI.
    `static java.util.Collection<java.lang.String>` | `getSupportedFunctionNames()` Returns a collection of function names implemented by POI.
    `static void` | `registerFunction(java.lang.String name, Function func)` Register a new function in runtime.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### functions

          protected static final Function[] functions

      Array elements corresponding to unimplemented functions are `null`

  - ### Method Detail

    - #### getBasicFunction

          public static Function getBasicFunction(int functionIndex)

      Returns:
        `null` if the specified functionIndex is for INDIRECT() or any external (add-in) function.

    - #### registerFunction

          public static void registerFunction(java.lang.String name,
                                              Function func)

      Register a new function in runtime.
      Parameters:
        `name` - the function name
        `func` - the functoin to register
      Throws:
        `java.lang.IllegalArgumentException` - if the function is unknown or already registered.
      Since:
        3.8 beta6

    - #### getSupportedFunctionNames

          public static java.util.Collection<java.lang.String> getSupportedFunctionNames()

      Returns a collection of function names implemented by POI.
      Returns:
        an array of supported functions
      Since:
        3.8 beta6

    - #### getNotSupportedFunctionNames

          public static java.util.Collection<java.lang.String> getNotSupportedFunctionNames()

      Returns an array of function names NOT implemented by POI.
      Returns:
        an array of not supported functions
      Since:
        3.8 beta6

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.