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

public abstract static class Term.Raw extends Object implements AssignmentTestable
A parsed, non prepared (thus untyped) term. This can be one of: - a constant - a collection literal - a function call - a marker
  • 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

      public abstract String getText()
      Returns:
      a String representation of the raw term that can be used when reconstructing a CQL query string.
    • getExactTypeIfKnown

      public abstract AbstractType<?> getExactTypeIfKnown(String keyspace)
      The type of the term if it can be infered.
      Parameters:
      keyspace - the keyspace on which the statement containing this term is on.
      Returns:
      the type of this Term if inferrable, or null otherwise (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 return null too).
    • getCompatibleTypeIfKnown

      public AbstractType<?> getCompatibleTypeIfKnown(String keyspace)
      Specified by:
      getCompatibleTypeIfKnown in interface AssignmentTestable
      Returns:
      A data type that can represent this, or null if we can't determine that type. The returned type won't necessarely be the exact type, but one that is compatible with it.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object