Package org.sqlite

## Class Function.Aggregate

- java.lang.Object
- - org.sqlite.Function
  - - org.sqlite.Function.Aggregate

All Implemented Interfaces:
  `Cloneable`

Direct Known Subclasses:
  `Function.Window`

Enclosing class:
  Function

    public abstract static class Function.Aggregate
    extends Function
    implements Cloneable

Provides an interface for creating SQLite user-defined aggregate functions.

See Also:
  `Function`

### Nested Class Summary

### Nested classes/interfaces inherited from class org.sqlite.Function

`Function.Aggregate, Function.Window`

### Field Summary

### Fields inherited from class org.sqlite.Function

`FLAG_DETERMINISTIC`

### Constructor Summary

Constructors
`Aggregate()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`Object` `clone()`
`protected abstract void` `xFinal()` Defines the abstract aggregate callback function
`protected void` `xFunc()` Called by SQLite as a custom function.
`protected abstract void` `xStep()` Defines the abstract aggregate callback function

### Methods inherited from class org.sqlite.Function

`args, create, create, create, destroy, destroy, error, result, result, result, result, result, result, value_blob, value_double, value_int, value_long, value_text, value_type`

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

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

### Constructor Detail

#### Aggregate

    public Aggregate()

### Method Detail

#### xFunc

    protected final void xFunc()

Description copied from class: `Function`
Called by SQLite as a custom function. Should access arguments through `value_*(int)`, return results with `result(*)` and throw errors with `error(String)`.

Specified by:
  `xFunc` in class `Function`
See Also:
  `Function.xFunc()`

#### xStep

    protected abstract void xStep()
                           throws SQLException

Defines the abstract aggregate callback function

Throws:
  `SQLException`
See Also:
  https://www.sqlite.org/c3ref/aggregate_context.html

#### xFinal

    protected abstract void xFinal()
                            throws SQLException

Defines the abstract aggregate callback function

Throws:
  `SQLException`
See Also:
  https://www.sqlite.org/c3ref/aggregate_context.html

#### clone

    public Object clone()
                 throws CloneNotSupportedException

Overrides:
  `clone` in class `Object`
Throws:
  `CloneNotSupportedException`
See Also:
  `Object.clone()`