Class Operator

  • All Implemented Interfaces:
    java.io.Serializable

    public abstract class Operator
    extends java.lang.Object
    implements java.io.Serializable
    An operator for an expression.
    Author:
    Tobias Downer
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ALL
      The ANY and ALL enumerator.
      static int ANY
      The ANY and ALL enumerator.
      static int NONE
      The ANY and ALL enumerator.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Operator​(java.lang.String op)
      Constructs the Operator.
      protected Operator​(java.lang.String op, int precedence)  
      protected Operator​(java.lang.String op, int precedence, int set_type)  
    • Constructor Detail

      • Operator

        protected Operator​(java.lang.String op)
        Constructs the Operator.
      • Operator

        protected Operator​(java.lang.String op,
                           int precedence)
      • Operator

        protected Operator​(java.lang.String op,
                           int precedence,
                           int set_type)
    • Method Detail

      • is

        public boolean is​(java.lang.String given_op)
        Returns true if this operator is equal to the operator string.
      • precedence

        public int precedence()
      • isCondition

        public boolean isCondition()
      • isMathematical

        public boolean isMathematical()
      • isPattern

        public boolean isPattern()
      • isLogical

        public boolean isLogical()
      • isNot

        public boolean isNot()
      • isSubQuery

        public boolean isSubQuery()
      • reverse

        public Operator reverse()
        Returns an Operator that is the reverse of this Operator. This is used for reversing a conditional expression. eg. 9 > id becomes id < 9.
      • isNotInversible

        public boolean isNotInversible()
        Returns true if this operator is not inversible.
      • inverse

        public Operator inverse()
        Returns the inverse operator of this operator. For example, = becomes <>, > becomes <=, AND becomes OR.
      • isSubQueryForm

        public boolean isSubQueryForm​(int type)
        Given a parameter of either NONE, ANY, ALL or SINGLE, this returns true if this operator is of the given type.
      • getSubQueryForm

        public Operator getSubQueryForm​(int type)
        Returns the ANY or ALL form of this operator.
      • getSubQueryForm

        public Operator getSubQueryForm​(java.lang.String type_str)
        Same as above only it handles the type as a string.
      • returnTType

        public TType returnTType()
        The type of object this Operator evaluates to.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object ob)
        Overrides:
        equals in class java.lang.Object
      • get

        public static Operator get​(java.lang.String op)
        Returns an Operator with the given string.