Class LiveVarValue

java.lang.Object
org.checkerframework.dataflow.livevariable.LiveVarValue
All Implemented Interfaces:
AbstractValue<LiveVarValue>

public class LiveVarValue extends Object implements AbstractValue<LiveVarValue>
A live variable (which is represented by a node) wrapper turning node into abstract value.
  • Field Details

  • Constructor Details

    • LiveVarValue

      public LiveVarValue(Node n)
      Create a new live variable.
      Parameters:
      n - a node
  • Method Details

    • leastUpperBound

      public LiveVarValue leastUpperBound(LiveVarValue other)
      Description copied from interface: AbstractValue
      Compute the least upper bound of two values.

      Important: This method must fulfill the following contract:

      • Does not change this.
      • Does not change other.
      • Returns a fresh object which is not aliased yet.
      • Returns an object of the same (dynamic) type as this, even if the signature is more permissive.
      • Is commutative.
      Specified by:
      leastUpperBound in interface AbstractValue<LiveVarValue>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(@Nullable Object obj)
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object