Package soot.JastAddJ

Class Binary

    • Field Detail

      • isConstant_visited

        protected int isConstant_visited
      • isConstant_computed

        protected boolean isConstant_computed
      • isConstant_initialized

        protected boolean isConstant_initialized
      • isConstant_value

        protected boolean isConstant_value
      • isDAafterTrue_Variable_values

        protected Map isDAafterTrue_Variable_values
      • isDAafterFalse_Variable_values

        protected Map isDAafterFalse_Variable_values
      • isDAafter_Variable_values

        protected Map isDAafter_Variable_values
      • isDUafter_Variable_values

        protected Map isDUafter_Variable_values
      • isDUbefore_Variable_values

        protected Map isDUbefore_Variable_values
    • Constructor Detail

      • Binary

        public Binary()
      • Binary

        public Binary​(Expr p0,
                      Expr p1)
    • Method Detail

      • flushCache

        public void flushCache()
        Overrides:
        flushCache in class Expr
      • emitShiftExpr

        public Value emitShiftExpr​(Body b)
      • init$Children

        public void init$Children()
        Initializes the child array to the correct size. Initializes List and Opt nta children.
        Overrides:
        init$Children in class Expr
      • numChildren

        protected int numChildren()
        Overrides:
        numChildren in class Expr
      • mayHaveRewrite

        public boolean mayHaveRewrite()
        Overrides:
        mayHaveRewrite in class Expr
      • setLeftOperand

        public void setLeftOperand​(Expr node)
        Replaces the LeftOperand child.
        Parameters:
        node - The new node to replace the LeftOperand child.
      • getLeftOperand

        public Expr getLeftOperand()
        Retrieves the LeftOperand child.
        Returns:
        The current node used as the LeftOperand child.
      • getLeftOperandNoTransform

        public Expr getLeftOperandNoTransform()
        Retrieves the LeftOperand child.

        This method does not invoke AST transformations.

        Returns:
        The current node used as the LeftOperand child.
      • setRightOperand

        public void setRightOperand​(Expr node)
        Replaces the RightOperand child.
        Parameters:
        node - The new node to replace the RightOperand child.
      • getRightOperand

        public Expr getRightOperand()
        Retrieves the RightOperand child.
        Returns:
        The current node used as the RightOperand child.
      • getRightOperandNoTransform

        public Expr getRightOperandNoTransform()
        Retrieves the RightOperand child.

        This method does not invoke AST transformations.

        Returns:
        The current node used as the RightOperand child.
      • printOp

        public abstract String printOp()
      • isConstant

        public boolean isConstant()
        Overrides:
        isConstant in class Expr
      • left

        public Expr left()
      • right

        public Expr right()
      • binaryNumericPromotedType

        public TypeDecl binaryNumericPromotedType()