FunctionCall (apache-cassandra API)
Date: 2018-02-14

org.apache.cassandra.cql3.functions

## Class FunctionCall

- java.lang.Object
- - org.apache.cassandra.cql3.Term.NonTerminal
  - - org.apache.cassandra.cql3.functions.FunctionCall

- All Implemented Interfaces:
    Term

      public class FunctionCall
      extends Term.NonTerminal

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `FunctionCall.Raw`

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

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addFunctionsTo(java.util.List<Function> functions)`
    `Term.Terminal` | `bind(QueryOptions options)` Bind the values in this term to the values contained in `values`.
    `java.nio.ByteBuffer` | `bindAndGet(QueryOptions options)` A shorter for bind(values).get().
    `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.

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

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

- - ### Method Detail

    - #### addFunctionsTo

          public void addFunctionsTo(java.util.List<Function> functions)

    - #### 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.

    - #### bind

          public Term.Terminal bind(QueryOptions options)
                             throws InvalidRequestException

      Description copied from interface: `Term`
      Bind the values in this term to the values contained in `values`. This is obviously a no-op if the term is Terminal.
      Parameters:
        `options` - the values to bind markers to.
      Returns:
        the result of binding all the variables of this NonTerminal (or 'this' if the term is terminal).
      Throws:
        `InvalidRequestException`

    - #### bindAndGet

          public java.nio.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`
      Overrides:
        `bindAndGet` in class `Term.NonTerminal`
      Throws:
        `InvalidRequestException`

    - #### 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.

Copyright © 2018 The Apache Software Foundation