Class BinaryExpression

    • Constructor Detail

      • BinaryExpression

        protected BinaryExpression​(CFG cfg,
                                   CodeLocation location,
                                   Expression left,
                                   Expression right)
        Builds the binary expression, happening at the given location in the program.
        Parameters:
        cfg - the cfg that this statement belongs to
        location - the location where the expression is defined within the source file. If unknown, use null
        left - the left hand-side of the expression
        right - the right hand-side of the expression
    • Method Detail

      • getLeft

        public final Expression getLeft()
        Yields the left hand-side of the expression.
        Returns:
        the left hand-side of the expression
      • getRight

        public final Expression getRight()
        Yields the right hand-side of the expression.
        Returns:
        the right hand-side of the expression
      • setOffset

        public final int setOffset​(int offset)
        Description copied from interface: Node
        Sets the offset of this node to the given value, and then proceeds by setting the one of its nested nodes (if any) to subsequent values. The last offset used is returned.
        Parameters:
        offset - the offset to set
        Returns:
        the last offset used while setting the offsets of nested nodes
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class Expression
      • accept

        public final <V> boolean accept​(GraphVisitor<CFG,​Statement,​Edge,​V> visitor,
                                        V tool)
        Description copied from interface: Node
        Accepts the given GraphVisitor. Implementors of this method are responsible for invoking GraphVisitor.visit(Object, Graph, Node) on this node after Node.accept(GraphVisitor, Object) has been invoked on all nested nodes, if any. The visiting should stop at the first of such calls that return false.
        Type Parameters:
        V - the type of auxiliary tool that visitor can use
        Parameters:
        visitor - the visitor that is visiting the Graph containing this node
        tool - the auxiliary tool that visitor can use
        Returns:
        whether or not the visiting should stop when this call returns, as decided by the visitor itself