Class ForClausePull

    • Method Detail

      • nextTuple

        public 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
        Specified by:
        nextTuple in class TuplePull
        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 - if any error occurs
      • getIterator

        protected SequenceIterator getIterator​(XPathContext context)
                                        throws XPathException
        Get an iterator over the items or members in the target collection.
        Parameters:
        context - dynamic evaluation context
        Returns:
        for a simple "for $x" clause, the sequence of items to which $x will be bound. For a "for member ¢x" clause, the sequence of array members, each wrapped as an object value
        Throws:
        XPathException - if evaluation fails
      • variableValue

        protected GroundedValue variableValue​(Item item)
        Get the value to be bound to the iteration variable
        Parameters:
        item - the value returned by the sequence iterator
        Returns:
        the value to be assigned to the iteration variable
      • 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
        Overrides:
        close in class TuplePull