Class OrderedAndDocumentIterator

  • All Implemented Interfaces:
    DocumentIterator

    public class OrderedAndDocumentIterator
    extends AbstractOrderedIntervalDocumentIterator
    An iterator returning documents containing nonoverlapping intervals in query order satisfying the underlying queries.

    In practice, this iterator implements strictly ordered AND, which is satisfied when the subqueries are satisfied by nonoverlapping intervals in query order.

    • Constructor Detail

      • OrderedAndDocumentIterator

        protected OrderedAndDocumentIterator​(Object arg,
                                             DocumentIterator[] documentIterator)
    • Method Detail

      • getInstance

        public static DocumentIterator getInstance​(Index index,
                                                   DocumentIterator... documentIterator)
                                            throws IOException
        Returns a document iterator that computes the ordered AND of the given array of iterators.

        Note that the special case of the empty and of the singleton arrays are handled efficiently.

        Parameters:
        index - the default index; relevant only if it has zero length.
        documentIterator - the iterators to be joined.
        Returns:
        a document iterator that computes the ordered AND of it.
        Throws:
        IOException
      • getInstance

        public static DocumentIterator getInstance​(DocumentIterator... documentIterator)
                                            throws IOException
        Returns a document iterator that computes the ordered AND of the given nonzero-length array of iterators.

        Note that the special case of the singleton array is handled efficiently.

        Parameters:
        documentIterator - the iterators to be joined (at least one).
        Returns:
        a document iterator that computes the ordered AND of it.
        Throws:
        IOException