org.apache.cassandra.cql3

## Class AbstractMarker

- java.lang.Object
- - org.apache.cassandra.cql3.Term.NonTerminal
  - - org.apache.cassandra.cql3.AbstractMarker

All Implemented Interfaces:
  Term

Direct Known Subclasses:
  Constants.Marker, Lists.Marker, Maps.Marker, Sets.Marker, Tuples.InMarker, Tuples.Marker

    public abstract class AbstractMarker
    extends Term.NonTerminal

A single bind marker.

### Nested Class Summary

Nested Classes
`static class` `AbstractMarker.INRaw` A raw placeholder for multiple values of the same type for a single column.
`static class` `AbstractMarker.Raw` A parsed, but non prepared, bind marker.

### Nested classes/interfaces inherited from interface org.apache.cassandra.cql3.Term

`Term.MultiColumnRaw, Term.MultiItemTerminal, Term.NonTerminal, Term.Terminal`

### Field Summary

Fields
`protected int` `bindIndex`
`protected ColumnSpecification` `receiver`

### Constructor Summary

Constructors
`protected` `AbstractMarker(int bindIndex, ColumnSpecification receiver)`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `collectMarkerSpecification(VariableSpecifications boundNames)` Collects the column specification for the bind variables in this Term.
`boolean` `containsBindMarker()` Whether or not that term contains at least one bind marker.
`java.lang.Iterable<Function>` `getFunctions()`

### Methods inherited from class org.apache.cassandra.cql3.Term.NonTerminal

`bindAndGet`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.cassandra.cql3.Term

`bind`

### Field Detail

#### bindIndex

    protected final int bindIndex

#### receiver

    protected final ColumnSpecification receiver

### Constructor Detail

#### AbstractMarker

    protected AbstractMarker(int bindIndex,
                             ColumnSpecification receiver)

### Method Detail

#### collectMarkerSpecification

    public void collectMarkerSpecification(VariableSpecifications boundNames)

Description copied from interface: `Term`
Collects the column specification for the bind variables in this Term. This is obviously a no-op if the term is Terminal.

Parameters:
  `boundNames` - the variables specification where to collect the bind variables of this term in.

#### containsBindMarker

    public boolean containsBindMarker()

Description copied from interface: `Term`
Whether or not that term contains at least one bind marker. Note that this is slightly different from being or not a NonTerminal, because calls to non pure functions will be NonTerminal (see #5616) even if they don't have bind markers.

#### getFunctions

    public java.lang.Iterable<Function> getFunctions()