Class Selectable.WithTerm
java.lang.Object
org.apache.cassandra.cql3.selection.Selectable.WithTerm
- All Implemented Interfaces:
AssignmentTestable,Selectable
- Enclosing interface:
- Selectable
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from interface org.apache.cassandra.cql3.AssignmentTestable
AssignmentTestable.TestResultNested classes/interfaces inherited from interface org.apache.cassandra.cql3.selection.Selectable
Selectable.BetweenParenthesesOrWithTuple, Selectable.RawIdentifier, Selectable.WithArrayLiteral, Selectable.WithCast, Selectable.WithElementSelection, Selectable.WithFieldSelection, Selectable.WithFunction, Selectable.WithList, Selectable.WithMapOrUdt, Selectable.WithSet, Selectable.WithSliceSelection, Selectable.WithTerm, Selectable.WithTypeHint, Selectable.WithVector, Selectable.WritetimeOrTTL -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAbstractType<?>getCompatibleTypeIfKnown(String keyspace) AbstractType<?>getExactTypeIfKnown(String keyspace) The type of theSelectableif it can be infered.newSelectorFactory(TableMetadata table, AbstractType<?> expectedType, List<ColumnMetadata> defs, VariableSpecifications boundNames) booleanselectColumns(Predicate<ColumnMetadata> predicate) Checks if thisSelectableselect columns matching the specified predicate.testAssignment(String keyspace, ColumnSpecification receiver) toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.cassandra.cql3.selection.Selectable
addAndGetIndex, processesSelection, specForElementOrSlice
-
Constructor Details
-
WithTerm
-
-
Method Details
-
testAssignment
- Specified by:
testAssignmentin interfaceAssignmentTestable- Specified by:
testAssignmentin interfaceSelectable- 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.
-
newSelectorFactory
public Selector.Factory newSelectorFactory(TableMetadata table, AbstractType<?> expectedType, List<ColumnMetadata> defs, VariableSpecifications boundNames) throws InvalidRequestException - Specified by:
newSelectorFactoryin interfaceSelectable- Throws:
InvalidRequestException
-
getExactTypeIfKnown
Description copied from interface:SelectableThe type of theSelectableif it can be infered.- Specified by:
getExactTypeIfKnownin interfaceSelectable- Parameters:
keyspace- the keyspace on which the statement for which this is aSelectableis on.- Returns:
- the type of this
Selectableif inferrable, ornullotherwise (for instance, the type isn't inferable for a bind marker. Even for literals, the exact type is not inferrable since they are valid for many different types and so this will returnnulltoo).
-
getCompatibleTypeIfKnown
- Specified by:
getCompatibleTypeIfKnownin interfaceAssignmentTestable- Specified by:
getCompatibleTypeIfKnownin interfaceSelectable- Returns:
- A data type that can represent this, or
nullif we can't determine that type. The returned type won't necessarely be the exact type, but one that is compatible with it.
-
selectColumns
Description copied from interface:SelectableChecks if thisSelectableselect columns matching the specified predicate.- Specified by:
selectColumnsin interfaceSelectable- Returns:
trueif thisSelectableselect columns matching the specified predicate,falseotherwise.
-
toString
-