## Uses of Interface
com.snowflake.snowpark_java.udaf.JavaUDAF

- Packages that use JavaUDAF
  Package | Description
  --- | ---
  com.snowflake.snowpark_java | Provides most of the classes for the Snowpark Java API.
  com.snowflake.snowpark_java.udaf |

- - ### Uses of JavaUDAF in com.snowflake.snowpark_java

    Methods in com.snowflake.snowpark_java with parameters of type JavaUDAF
    Modifier and Type | Method | Description
    --- | --- | ---
    `AggregateFunction` | UDAFRegistration.`registerPermanent​(java.lang.String funcName, JavaUDAF udaf, java.lang.String stageLocation)` | Registers a UDAF instance as a Snowflake UDAF.
    `AggregateFunction` | UDAFRegistration.`registerTemporary​(JavaUDAF udaf)` | Registers a UDAF instance as an anonymous temporary Snowflake UDAF that you plan to use in the session.
    `AggregateFunction` | UDAFRegistration.`registerTemporary​(java.lang.String funcName, JavaUDAF udaf)` | Registers a UDAF instance as a temporary Snowflake UDAF that you plan to use in the session.

  - ### Uses of JavaUDAF in com.snowflake.snowpark_java.udaf

    Subinterfaces of JavaUDAF in com.snowflake.snowpark_java.udaf
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `JavaUDAF1<S,​O,​A0>` |
    `interface` | `JavaUDAF10<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9>` |
    `interface` | `JavaUDAF11<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10>` |
    `interface` | `JavaUDAF12<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11>` |
    `interface` | `JavaUDAF13<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12>` |
    `interface` | `JavaUDAF14<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13>` |
    `interface` | `JavaUDAF15<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14>` |
    `interface` | `JavaUDAF16<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15>` |
    `interface` | `JavaUDAF17<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16>` |
    `interface` | `JavaUDAF18<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16,​A17>` |
    `interface` | `JavaUDAF19<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16,​A17,​A18>` |
    `interface` | `JavaUDAF2<S,​O,​A0,​A1>` |
    `interface` | `JavaUDAF20<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16,​A17,​A18,​A19>` |
    `interface` | `JavaUDAF21<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16,​A17,​A18,​A19,​A20>` |
    `interface` | `JavaUDAF22<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8,​A9,​A10,​A11,​A12,​A13,​A14,​A15,​A16,​A17,​A18,​A19,​A20,​A21>` |
    `interface` | `JavaUDAF3<S,​O,​A0,​A1,​A2>` |
    `interface` | `JavaUDAF4<S,​O,​A0,​A1,​A2,​A3>` |
    `interface` | `JavaUDAF5<S,​O,​A0,​A1,​A2,​A3,​A4>` |
    `interface` | `JavaUDAF6<S,​O,​A0,​A1,​A2,​A3,​A4,​A5>` |
    `interface` | `JavaUDAF7<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6>` |
    `interface` | `JavaUDAF8<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7>` |
    `interface` | `JavaUDAF9<S,​O,​A0,​A1,​A2,​A3,​A4,​A5,​A6,​A7,​A8>` |