Class FilterIterator.NonNumeric

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, SequenceIterator
    Enclosing class:
    FilterIterator

    public static final class FilterIterator.NonNumeric
    extends FilterIterator
    Subclass to handle the common special case where it is statically known that the filter cannot return a numeric value
    • Constructor Detail

      • NonNumeric

        public NonNumeric​(SequenceIterator base,
                          Expression filter,
                          XPathContext context)
        Create a CompiledFilterIterator for the situation where it is known that the filter expression will never evaluate to a number value. For this case we can simply use the effective boolean value of the predicate
        Parameters:
        base - iterator over the sequence to be filtered
        filter - the filter expression
        context - the current context (for evaluating the filter expression as a whole). A new context will be created to evaluate the predicate.
    • Method Detail

      • matches

        protected boolean matches()
                           throws XPathException
        Determine whether the context item matches the filter predicate
        Overrides:
        matches in class FilterIterator
        Returns:
        true if the context item matches
        Throws:
        XPathException - if an error occurs evaluating the match