Class SourceValue

  • All Implemented Interfaces:
    Value

    public class SourceValue
    extends java.lang.Object
    implements Value
    A Value that is represented by its type in a two types type system. This type system distinguishes the ONEWORD and TWOWORDS types.
    Author:
    Eric Bruneton
    • Field Detail

      • size

        public final int size
        The size of this value.
      • insns

        public final java.util.Set<AbstractInsnNode> insns
        The instructions that can produce this value. For example, for the Java code below, the instructions that can produce the value of i at line 5 are the txo ISTORE instructions at line 1 and 3:
         1: i = 0;
         2: if (...) {
         3:   i = 1;
         4: }
         5: return i;
         
        This field is a set of AbstractInsnNode objects.
    • Constructor Detail

      • SourceValue

        public SourceValue​(int size)
      • SourceValue

        public SourceValue​(int size,
                           java.util.Set<AbstractInsnNode> insns)
    • Method Detail

      • getSize

        public int getSize()
        Description copied from interface: Value
        Returns the size of this value in words.
        Specified by:
        getSize in interface Value
        Returns:
        either 1 or 2.
      • equals

        public boolean equals​(java.lang.Object value)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object