org.apache.cassandra.cql3

## Interface AssignmentTestable

All Known Subinterfaces:
  AggregateFunction, Function, ScalarFunction, Term.MultiColumnRaw, Term.Raw

All Known Implementing Classes:
  AbstractFunction, AbstractMarker.INRaw, AbstractMarker.Raw, Constants.Literal, FromJsonFct, FunctionCall.Raw, Lists.Literal, Maps.Literal, NativeAggregateFunction, NativeFunction, NativeScalarFunction, ScriptBasedUDF, Selector, Sets.Literal, SimpleSelector, ToJsonFct, TokenFct, Tuples.INRaw, Tuples.Literal, Tuples.Raw, TypeCast, UDAggregate, UDFunction, UserTypes.Literal

    public interface AssignmentTestable

### Nested Class Summary

Nested Classes
`static class` `AssignmentTestable.TestResult`

### Method Summary

All Methods Instance Methods Abstract Methods
`AssignmentTestable.TestResult` `testAssignment(java.lang.String keyspace, ColumnSpecification receiver)`

### Method Detail

#### testAssignment

    AssignmentTestable.TestResult testAssignment(java.lang.String keyspace,
                                                 ColumnSpecification receiver)

Returns:
  whether this object can be assigned to the provided receiver. We distinguish between 3 values: - EXACT_MATCH if this object is exactly of the type expected by the receiver - WEAKLY_ASSIGNABLE if this object is not exactly the expected type but is assignable nonetheless - NOT_ASSIGNABLE if it's not assignable Most caller should just call the isAssignable() method on the result, though functions have a use for testing "strong" equality to decide the most precise overload to pick when multiple could match.