Package org.eclipse.sisu.space.asm
Class Edge
- java.lang.Object
-
- org.eclipse.sisu.space.asm.Edge
-
final class Edge extends java.lang.Object
An edge in the control flow graph of a method body. SeeLabel
.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static int
EXCEPTION
Denotes a control flow graph edge corresponding to an exception handler.(package private) int
info
Information about this control flow graph edge.(package private) Edge
next
The next edge in the list of successors of the originating basic block.(package private) static int
NORMAL
Denotes a normal control flow graph edge.(package private) Label
successor
The successor block of the basic block from which this edge originates.
-
Constructor Summary
Constructors Constructor Description Edge()
-
-
-
Field Detail
-
NORMAL
static final int NORMAL
Denotes a normal control flow graph edge.- See Also:
- Constant Field Values
-
EXCEPTION
static final int EXCEPTION
Denotes a control flow graph edge corresponding to an exception handler. More precisely anyEdge
whoseinfo
is strictly positive corresponds to an exception handler. The actual value ofinfo
is the index, in theClassWriter
type table, of the exception that is catched.- See Also:
- Constant Field Values
-
info
int info
Information about this control flow graph edge. IfClassWriter.COMPUTE_MAXS
is used this field is the (relative) stack size in the basic block from which this edge originates. This size is equal to the stack size at the "jump" instruction to which this edge corresponds, relatively to the stack size at the beginning of the originating basic block. IfClassWriter.COMPUTE_FRAMES
is used, this field is the kind of this control flow graph edge (i.e. NORMAL or EXCEPTION).
-
successor
Label successor
The successor block of the basic block from which this edge originates.
-
next
Edge next
The next edge in the list of successors of the originating basic block. Seesuccessors
.
-
-