## Uses of Interface
org.apache.cassandra.cql3.functions.Function

Packages that use Function
org.apache.cassandra.config
org.apache.cassandra.cql3
org.apache.cassandra.cql3.functions
org.apache.cassandra.cql3.restrictions
org.apache.cassandra.cql3.selection
org.apache.cassandra.cql3.statements
org.apache.cassandra.exceptions
org.apache.cassandra.schema
org.apache.cassandra.service

### Uses of Function in org.apache.cassandra.config

Methods in org.apache.cassandra.config that return types with arguments of type Function
`java.util.Optional<Function>` Schema.`findFunction(FunctionName name, java.util.List<AbstractType<?>> argTypes)` Find the function with the specified name
`java.util.Collection<Function>` Schema.`getFunctions(FunctionName name)` Get all function overloads with the specified name

### Uses of Function in org.apache.cassandra.cql3

Methods in org.apache.cassandra.cql3 that return types with arguments of type Function
`java.lang.Iterable<Function>` CQLStatement.`getFunctions()` Return an Iterable over all of the functions (both native and user-defined) used by any component of the statement

Method parameters in org.apache.cassandra.cql3 with type arguments of type Function
`static void` Terms.`addFunctions(java.lang.Iterable<Term> terms, java.util.List<Function> functions)`
`void` AbstractMarker.`addFunctionsTo(java.util.List<Function> functions)`
`void` Attributes.`addFunctionsTo(java.util.List<Function> functions)`
`void` ColumnCondition.`addFunctionsTo(java.util.List<Function> functions)`
`void` ColumnConditions.`addFunctionsTo(java.util.List<Function> functions)`
`void` Conditions.`addFunctionsTo(java.util.List<Function> functions)` Adds the functions used by the conditions to the specified list.
`void` Lists.DelayedValue.`addFunctionsTo(java.util.List<Function> functions)`
`void` Maps.DelayedValue.`addFunctionsTo(java.util.List<Function> functions)`
`void` Operation.`addFunctionsTo(java.util.List<Function> functions)`
`void` Operations.`addFunctionsTo(java.util.List<Function> functions)`
`void` Sets.DelayedValue.`addFunctionsTo(java.util.List<Function> functions)`
`void` Term.`addFunctionsTo(java.util.List<Function> functions)`
`void` Term.Terminal.`addFunctionsTo(java.util.List<Function> functions)`
`void` Tuples.DelayedValue.`addFunctionsTo(java.util.List<Function> functions)`
`void` UserTypes.DelayedValue.`addFunctionsTo(java.util.List<Function> functions)`

### Uses of Function in org.apache.cassandra.cql3.functions

Subinterfaces of Function in org.apache.cassandra.cql3.functions
`interface` `AggregateFunction` Performs a calculation on a set of values and return a single value.
`interface` `ScalarFunction` Determines a single output value based on a single input value.

Classes in org.apache.cassandra.cql3.functions that implement Function
`class` `AbstractFunction` Base class for our native/hardcoded functions.
`class` `FromJsonFct`
`class` `JavaBasedUDFunction`
`class` `NativeAggregateFunction` Base class for the `AggregateFunction` native classes.
`class` `NativeFunction` Base class for our native/hardcoded functions.
`class` `NativeScalarFunction` Base class for the `ScalarFunction` native classes.
`class` `ToJsonFct`
`class` `TokenFct`
`class` `UDAggregate` Base class for user-defined-aggregates.
`class` `UDFunction` Base class for User Defined Functions.

Fields in org.apache.cassandra.cql3.functions declared as Function
`static Function` BytesConversionFcts.`BlobAsVarcharFct`
`static Function` TimeFcts.`maxTimeuuidFct`
`static Function` TimeFcts.`minTimeuuidFct`
`static Function` TimeFcts.`nowFct`
`static Function` UuidFcts.`uuidFct`
`static Function` BytesConversionFcts.`VarcharAsBlobFct`

Methods in org.apache.cassandra.cql3.functions that return Function
`static Function` FunctionResolver.`get(java.lang.String keyspace, FunctionName name, java.util.List<? extends AssignmentTestable> providedArgs, java.lang.String receiverKs, java.lang.String receiverCf, AbstractType<?> receiverType)`
`static Function` BytesConversionFcts.`makeFromBlobFunction(AbstractType<?> toType)`
`static Function` BytesConversionFcts.`makeToBlobFunction(AbstractType<?> fromType)`

Methods in org.apache.cassandra.cql3.functions that return types with arguments of type Function
`static java.util.Collection<Function>` BytesConversionFcts.`all()`
`static java.util.Collection<Function>` CastFcts.`all()`
`static java.util.Collection<Function>` TimeFcts.`all()`
`static java.util.Collection<Function>` UuidFcts.`all()`

Methods in org.apache.cassandra.cql3.functions with parameters of type Function
`boolean` AbstractFunction.`hasReferenceTo(Function function)`
`boolean` Function.`hasReferenceTo(Function function)`
`boolean` UDAggregate.`hasReferenceTo(Function function)`
`static ColumnSpecification` FunctionResolver.`makeArgSpec(java.lang.String receiverKs, java.lang.String receiverCf, Function fun, int i)`

Method parameters in org.apache.cassandra.cql3.functions with type arguments of type Function
`void` AbstractFunction.`addFunctionsTo(java.util.List<Function> functions)`
`void` Function.`addFunctionsTo(java.util.List<Function> functions)`
`void` FunctionCall.`addFunctionsTo(java.util.List<Function> functions)`
`void` UDAggregate.`addFunctionsTo(java.util.List<Function> functions)`

### Uses of Function in org.apache.cassandra.cql3.restrictions

Method parameters in org.apache.cassandra.cql3.restrictions with type arguments of type Function
`void` MultiColumnRestriction.EQRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` MultiColumnRestriction.InRestrictionWithValues.`addFunctionsTo(java.util.List<Function> functions)`
`void` MultiColumnRestriction.InRestrictionWithMarker.`addFunctionsTo(java.util.List<Function> functions)`
`void` MultiColumnRestriction.SliceRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` MultiColumnRestriction.NotNullRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` Restriction.`addFunctionsTo(java.util.List<Function> functions)` Adds all functions (native and user-defined) used by any component of the restriction to the specified list.
`void` SingleColumnRestriction.EQRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.InRestrictionWithValues.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.InRestrictionWithMarker.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.SliceRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.ContainsRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.IsNotNullRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.LikeRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` SingleColumnRestriction.SuperColumnKeyINRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` StatementRestrictions.`addFunctionsTo(java.util.List<Function> functions)`
`void` TermSlice.`addFunctionsTo(java.util.List<Function> functions)`
`void` TokenRestriction.EQRestriction.`addFunctionsTo(java.util.List<Function> functions)`
`void` TokenRestriction.SliceRestriction.`addFunctionsTo(java.util.List<Function> functions)`

### Uses of Function in org.apache.cassandra.cql3.selection

Fields in org.apache.cassandra.cql3.selection declared as Function
`Function` Selectable.WithFunction.`function`

Method parameters in org.apache.cassandra.cql3.selection with type arguments of type Function
`void` Selection.`addFunctionsTo(java.util.List<Function> functions)`
`void` Selector.Factory.`addFunctionsTo(java.util.List<Function> functions)`

Constructors in org.apache.cassandra.cql3.selection with parameters of type Function
Constructor and Description
`WithFunction(Function function, java.util.List<Selectable> args)`

### Uses of Function in org.apache.cassandra.cql3.statements

Methods in org.apache.cassandra.cql3.statements that return types with arguments of type Function
`java.lang.Iterable<Function>` BatchStatement.`getFunctions()`
`java.lang.Iterable<Function>` ModificationStatement.`getFunctions()`
`java.lang.Iterable<Function>` ParsedStatement.`getFunctions()`
`java.lang.Iterable<Function>` SelectStatement.`getFunctions()`

Method parameters in org.apache.cassandra.cql3.statements with type arguments of type Function
`void` ModificationStatement.`addFunctionsTo(java.util.List<Function> functions)`

### Uses of Function in org.apache.cassandra.exceptions

Methods in org.apache.cassandra.exceptions with parameters of type Function
`static FunctionExecutionException` FunctionExecutionException.`create(Function function, java.lang.Throwable cause)`

### Uses of Function in org.apache.cassandra.schema

Methods in org.apache.cassandra.schema that return types with arguments of type Function
`java.util.Optional<Function>` Functions.`find(FunctionName name, java.util.List<AbstractType<?>> argTypes)` Find the function with the specified name
`java.util.Collection<Function>` Functions.`get(FunctionName name)` Get all function overloads with the specified name
`java.util.Iterator<Function>` Functions.`iterator()`
`java.util.stream.Stream<Function>` Functions.`stream()`

Methods in org.apache.cassandra.schema with parameters of type Function
`Functions.Builder` Functions.Builder.`add(Function... funs)`
`Functions.Builder` Functions.Builder.`add(Function fun)`
`java.util.Collection<UDAggregate>` Functions.`aggregatesUsingFunction(Function function)`
`static Functions` Functions.`of(Function... funs)`
`Functions` Functions.`with(Function fun)` Create a Functions instance with the provided function added

Method parameters in org.apache.cassandra.schema with type arguments of type Function
`Functions.Builder` Functions.Builder.`add(java.lang.Iterable<? extends Function> funs)`

### Uses of Function in org.apache.cassandra.service

Methods in org.apache.cassandra.service with parameters of type Function
`void` ClientState.`ensureHasPermission(Permission permission, Function function)`