Package org.apache.cassandra.cql3
Class Term.Raw
java.lang.Object
org.apache.cassandra.cql3.Term.Raw
- All Implemented Interfaces:
AssignmentTestable
- Direct Known Subclasses:
AbstractMarker.Raw,ArrayLiteral,Constants.Literal,FunctionCall.Raw,Lists.Literal,Maps.Literal,Sets.Literal,Term.MultiColumnRaw,TypeCast,UserTypes.Literal,Vectors.Literal
- Enclosing interface:
- Term
A parsed, non prepared (thus untyped) term.
This can be one of:
- a constant
- a collection literal
- a function call
- a marker
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.cassandra.cql3.AssignmentTestable
AssignmentTestable.TestResult -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanAbstractType<?>getCompatibleTypeIfKnown(String keyspace) abstract AbstractType<?>getExactTypeIfKnown(String keyspace) The type of thetermif it can be infered.abstract StringgetText()inthashCode()abstract Termprepare(String keyspace, ColumnSpecification receiver) This method validates this RawTerm is valid for provided column specification and "prepare" this RawTerm, returning the resulting prepared Term.toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.cassandra.cql3.AssignmentTestable
testAssignment
-
Constructor Details
-
Raw
public Raw()
-
-
Method Details
-
prepare
public abstract Term prepare(String keyspace, ColumnSpecification receiver) throws InvalidRequestException This method validates this RawTerm is valid for provided column specification and "prepare" this RawTerm, returning the resulting prepared Term.- Parameters:
receiver- the "column" this RawTerm is supposed to be a value of. Note that the ColumnSpecification may not correspond to a real column in the case this RawTerm describe a list index or a map key, etc...- Returns:
- the prepared term.
- Throws:
InvalidRequestException
-
getText
- Returns:
- a String representation of the raw term that can be used when reconstructing a CQL query string.
-
getExactTypeIfKnown
The type of thetermif it can be infered.- Parameters:
keyspace- the keyspace on which the statement containing this term is on.- Returns:
- the type of this
Termif inferrable, ornullotherwise (for instance, the type isn't inferrable 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- 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.
-
toString
-
hashCode
public int hashCode() -
equals
-