Class ComparisonOperator

    • Constructor Detail

      • ComparisonOperator

        protected ComparisonOperator​(String sSymbol,
                                     String... asAliases)
        Construct a comparison operator with the given symbol and aliases.
        Parameters:
        sSymbol - the symbol for this operator
        asAliases - any aliases for this operator
    • Method Detail

      • makeFilter

        public ComparisonFilter makeFilter​(Term termLeft,
                                           Term termRight,
                                           TermWalker walker)
        Description copied from class: BaseOperator
        Create a Filter for this BaseOperator using the specified left and right Terms.

        Note: This method should be thread safe as operators are stored in a static map so may be called by multiple threads.

        Overrides:
        makeFilter in class BaseOperator<ComparisonFilter>
        Parameters:
        termLeft - the left term to use to build a Filter
        termRight - the right term to use to build a Filter
        walker - the TermWalker to use to process the left and right terms
        Returns:
        a Filter representing this operation.
      • flip

        public abstract BaseOperator<ComparisonFilter> flip()
        Return the operator to use if this operation needs to be flipped due to the CohQL statement having the literal on the left hand side. For example if the statement was "2 == foo" this would need to be flipped to put the literal on the right so giving the statement "foo == 2" and the flipped operator is still ==. But for another example such as "2 >= foo" flipping this give the statement "foo <= 2" so the operator has changed from >= to <=
        Returns:
        the operator to use if this operation needs to be flipped due to the CohQL statement having the literal on the left hand side.