Jode 1.90-CVS
Build Aug 6, 2004

net.sf.jode.flow
Class VariableStack

java.lang.Object
  extended bynet.sf.jode.flow.VariableStack

public class VariableStack
extends java.lang.Object

This class represents the state of the stack at various points in the program. Each entry is a anonymous local, which is used instead of the PUSH / stack_i statements.

This class is immutable, but note, that the local infos can get merged.

See Also:
FlowBlock.mapStackToLocal(), FlowBlock.removePush()

Field Summary
static VariableStack EMPTY
           
 
Method Summary
 VariableStack executeSpecial(SpecialBlock special)
           
 boolean isEmpty()
           
 void merge(VariableStack other)
           
static VariableStack merge(VariableStack first, VariableStack second)
          Merge to VariableStacks.
 Expression mergeIntoExpression(Expression expr)
           
 VariableStack peek(int count)
           
 VariableStack pop(int count)
           
 VariableStack poppush(int count, LocalInfo li)
           
 VariableStack push(LocalInfo li)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

EMPTY

public static final VariableStack EMPTY
Method Detail

isEmpty

public boolean isEmpty()

pop

public VariableStack pop(int count)

push

public VariableStack push(LocalInfo li)

poppush

public VariableStack poppush(int count,
                             LocalInfo li)

peek

public VariableStack peek(int count)

merge

public void merge(VariableStack other)

merge

public static VariableStack merge(VariableStack first,
                                  VariableStack second)
Merge to VariableStacks. Either one may be null, in which case the other is returned.


mergeIntoExpression

public Expression mergeIntoExpression(Expression expr)

executeSpecial

public VariableStack executeSpecial(SpecialBlock special)

toString

public java.lang.String toString()

Jode 1.90-CVS
Build Aug 6, 2004

Copyright © 1998-2004 by Jochen Hoenicke.