Package net.sf.saxon.expr.flwor

## Class TuplePull

- java.lang.Object
- - net.sf.saxon.expr.flwor.TuplePull

- Direct Known Subclasses:
    `CountClausePull`, `ForClausePull`, `GroupByClausePull`, `LetClausePull`, `OrderByClausePull`, `SingularityPull`, `TraceClausePull`, `WhereClausePull`, `WindowClausePull`

      public abstract class TuplePull
      extends java.lang.Object

  Abtract class representing a tuple stream (used to evaluate a FLWOR expression) in pull mode (where the consumer of tuples activates the provider of those tuples)

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `TuplePull()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `close()` | Close the tuple stream, indicating that although not all tuples have been read, no further tuples are required and resources can be released
    `abstract boolean` | `nextTuple​(XPathContext context)` | Move on to the next tuple.

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

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

- - ### Constructor Detail

    - #### TuplePull

          public TuplePull()

  - ### Method Detail

    - #### nextTuple

          public abstract boolean nextTuple​(XPathContext context)
                                     throws XPathException

      Move on to the next tuple. Before returning, this method must set all the variables corresponding to the "returned" tuple in the local stack frame associated with the context object
      Parameters:
        `context` - the dynamic evaluation context
      Returns:
        true if another tuple has been generated; false if the tuple stream is exhausted. If the method returns false, the values of the local variables corresponding to this tuple stream are undefined.
      Throws:
        `XPathException`

    - #### close

          public void close()

      Close the tuple stream, indicating that although not all tuples have been read, no further tuples are required and resources can be released