de.rwth.dfa.jvm.samples
Class  AbstractSSDependingAbstraction
java.lang.Object
  |
  +--de.rwth.dfa.jvm.samples.AbstractSSDependingAbstraction
- All Implemented Interfaces: 
 - Abstraction
 
- Direct Known Subclasses: 
 - CPAbstraction
 
- public abstract class AbstractSSDependingAbstraction
- extends java.lang.Object
- implements Abstraction
   
An abstract helper class for implementing abstractions where the initial values at
 instructions depend on the size of the operand size at this instruction.
 
 
 When creating an instance of a sub class, the stack size
 analysis is performed.
- Version: 
 - $Id: AbstractSSDependingAbstraction.java,v 1.4 2002/09/17 06:53:53 mohnen Exp $
 
- Author: 
 - Markus Mohnen
 
 
| 
Field Summary | 
protected  de.fub.bytecode.generic.ConstantPoolGen | 
cpg
 
          The constant pool generator used for this abstraction. | 
protected  java.util.Hashtable | 
stacksizes
 
          The association between instruction handles and stack sizes. | 
 
 
| 
Constructor Summary | 
AbstractSSDependingAbstraction(int maxStack,
                               de.fub.bytecode.generic.ConstantPoolGen constantPoolGen,
                               de.fub.bytecode.generic.InstructionList methodInstrs,
                               de.fub.bytecode.classfile.CodeException[] methodExceptions)
 
          Creates a new AbstractSSDependingAbstraction instance. | 
AbstractSSDependingAbstraction(int maxStack,
                               de.fub.bytecode.classfile.ConstantPool constantPool,
                               de.fub.bytecode.generic.InstructionList methodInstrs,
                               de.fub.bytecode.classfile.CodeException[] methodExceptions)
 
          Creates a new AbstractSSDependingAbstraction instance. | 
 
| 
Method Summary | 
 de.fub.bytecode.generic.ConstantPoolGen | 
getConstantPoolGen()
 
          Returns the constant pool generator used for this abstraction. | 
 java.lang.Integer | 
getStacksize(de.fub.bytecode.generic.InstructionHandle ih)
 
          Returns the stack size for an instruction in a method. | 
 
| Methods inherited from class java.lang.Object | 
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
 
cpg
protected de.fub.bytecode.generic.ConstantPoolGen cpg
- The constant pool generator used for this abstraction.
 
stacksizes
protected java.util.Hashtable stacksizes
- The association between instruction handles and stack sizes.
 
AbstractSSDependingAbstraction
public AbstractSSDependingAbstraction(int maxStack,
                                      de.fub.bytecode.generic.ConstantPoolGen constantPoolGen,
                                      de.fub.bytecode.generic.InstructionList methodInstrs,
                                      de.fub.bytecode.classfile.CodeException[] methodExceptions)
- Creates a new 
AbstractSSDependingAbstraction instance.
- Parameters:
 maxStack - an int valueconstantPoolGen - a ConstantPoolGen valuemethodInstrs - an InstructionList valuemethodExceptions - a CodeException[] value
 
 
AbstractSSDependingAbstraction
public AbstractSSDependingAbstraction(int maxStack,
                                      de.fub.bytecode.classfile.ConstantPool constantPool,
                                      de.fub.bytecode.generic.InstructionList methodInstrs,
                                      de.fub.bytecode.classfile.CodeException[] methodExceptions)
- Creates a new 
AbstractSSDependingAbstraction instance.
- Parameters:
 maxStack - an int valueconstantPool - a ConstantPool valuemethodInstrs - an InstructionList valuemethodExceptions - a CodeException[] value
 
 
getConstantPoolGen
public de.fub.bytecode.generic.ConstantPoolGen getConstantPoolGen()
- Returns the constant pool generator used for this abstraction.
 
- Returns:
 - a 
ConstantPoolGen value 
 
 
getStacksize
public java.lang.Integer getStacksize(de.fub.bytecode.generic.InstructionHandle ih)
- Returns the stack size for an instruction in a method. For instructions with
 undetermined stack size (dead code), the size is -1.
 
- Parameters:
 ih - an InstructionHandle value- Returns:
 - an 
Integer value