Class Term.NonTerminal

java.lang.Object
org.apache.cassandra.cql3.Term.NonTerminal
All Implemented Interfaces:
Term
Direct Known Subclasses:
AbstractMarker, FunctionCall, Lists.DelayedValue, Maps.DelayedValue, Sets.DelayedValue, Tuples.DelayedValue, UserTypes.DelayedValue, Vectors.DelayedValue
Enclosing interface:
Term

public abstract static class Term.NonTerminal extends Object implements Term
A non terminal term, i.e. a term that can only be reduce to a byte buffer at execution time. We have the following type of NonTerminal: - marker for a constant value - marker for a collection value (list, set, map) - a function having bind marker - a non pure function (even if it doesn't have bind marker - see #5616)
  • Constructor Details

    • NonTerminal

      public NonTerminal()
  • Method Details

    • bindAndGet

      public ByteBuffer bindAndGet(QueryOptions options) throws InvalidRequestException
      Description copied from interface: Term
      A shorter for bind(values).get(). We expose it mainly because for constants it can avoids allocating a temporary object between the bind and the get (note that we still want to be able to separate bind and get for collections).
      Specified by:
      bindAndGet in interface Term
      Throws:
      InvalidRequestException