org.objectweb.asm.tree.analysis
Class DataflowValue

java.lang.Object
  extended by org.objectweb.asm.tree.analysis.DataflowValue
All Implemented Interfaces:
Value

public class DataflowValue
extends 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 Summary
 Set insns
          The instructions that can produce this value.
 int size
          The size of this value.
 
Constructor Summary
DataflowValue(int size)
           
DataflowValue(int size, AbstractInsnNode insn)
           
DataflowValue(int size, Set insns)
           
 
Method Summary
 boolean equals(Value value)
          Compares this value with the given value.
 int getSize()
          Returns the size of this value in words.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

size

public final int size
The size of this value.


insns

public final Set 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

DataflowValue

public DataflowValue(int size)

DataflowValue

public DataflowValue(int size,
                     AbstractInsnNode insn)

DataflowValue

public DataflowValue(int size,
                     Set 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(Value value)
Description copied from interface: Value
Compares this value with the given value.

Specified by:
equals in interface Value
Parameters:
value - a value.
Returns:
true if the values are equals, false otherwise.