|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectharpoon.IR.Quads.Quad
harpoon.IR.Quads.HANDLER
public class HANDLER
A HANDLER
quad marks an entry to an exception handler.
METHOD
,
Serialized FormNested Class Summary | |
---|---|
static interface |
HANDLER.ProtectedSet
An interface to specify which Quad s a particular
HANDLER protects. |
Field Summary | |
---|---|
protected HClass |
caughtException
The exception caught by this HANDLER ,
or null for any exception. |
protected Temp |
exceptionTemp
The Temp holding the caught exception on invocation of
this HANDLER . |
protected HANDLER.ProtectedSet |
protectedSet
The set of Quad s protected by this HANDLER . |
Fields inherited from class harpoon.IR.Quads.Quad |
---|
arrayFactory |
Constructor Summary | |
---|---|
HANDLER(QuadFactory qf,
HCodeElement source,
Temp exceptionTemp,
HClass caughtException,
HANDLER.ProtectedSet protectedSet)
Creates a HANDLER . |
Method Summary | ||
---|---|---|
|
accept(QuadValueVisitor<T> v)
|
|
void |
accept(QuadVisitor v)
Accept a visitor. |
|
HClass |
caughtException()
Returns the superclass of the exceptions caught by this HANDLER , or null if any exception
is caught. |
|
Temp[] |
def()
Return all the Temps defined by this Quad. |
|
Temp |
exceptionTemp()
Returns the Temp which will hold the exception on
the invocation of this HANDLER . |
|
boolean |
isCaught(HClass hc)
Returns true if the given exception HClass
is caught by this HANDLER . |
|
boolean |
isProtected(Quad q)
Returns true if the given Quad is
protected by this HANDLER ; false otherwise. |
|
int |
kind()
Return an integer enumeration of the kind of this Quad . |
|
Enumeration<Quad> |
protectedQuads()
Deprecated. |
|
Set<Quad> |
protectedSet()
Returns an immutable Set of the Quads s
protected by this HANDLER . |
|
Quad |
rename(QuadFactory qqf,
TempMap defMap,
TempMap useMap)
Create a new Quad identical to the receiver, but
with all Temp s renamed according to a mapping. |
|
String |
toString()
Returns human-readable representation of this Quad . |
Methods inherited from class harpoon.IR.Quads.Quad |
---|
addEdge, addEdges, addHandlers, clone, clone, clone, compareTo, defC, edgeC, edges, getFactory, getID, getLineNumber, getSourceFile, handlers, hashCode, isPred, isSucc, map, map, map, next, next, nextEdge, nextEdge, nextLength, pred, predC, prev, prev, prevEdge, prevEdge, prevLength, remove, removeHandlers, rename, replace, succ, succC, toLongString, transferHandlers, use, useC |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected Temp exceptionTemp
Temp
holding the caught exception on invocation of
this HANDLER
.
protected HClass caughtException
HANDLER
,
or null
for any exception.
protected HANDLER.ProtectedSet protectedSet
Quad
s protected by this HANDLER
.
Constructor Detail |
---|
public HANDLER(QuadFactory qf, HCodeElement source, Temp exceptionTemp, HClass caughtException, HANDLER.ProtectedSet protectedSet)
HANDLER
.
exceptionTemp
- the Temp
holding the caught exception on
invocation of this HANDLER
.caughtException
- the exception type caught by this HANDLER
,
or null
for any exception.protectedSet
- the set of Quad
s protected by this
HANDLER
.Method Detail |
---|
public Temp exceptionTemp()
Temp
which will hold the exception on
the invocation of this HANDLER
.
public HClass caughtException()
HANDLER
, or null
if any exception
is caught.
public boolean isCaught(HClass hc)
true
if the given exception HClass
is caught by this HANDLER
.
public boolean isProtected(Quad q)
true
if the given Quad
is
protected by this HANDLER
; false
otherwise.
public Enumeration<Quad> protectedQuads()
Enumeration
of the Quad
s
protected by this HANDLER
.
public Set<Quad> protectedSet()
Set
of the Quads
s
protected by this HANDLER
.
public Temp[] def()
Quad
def
in interface UseDefable
def
in class Quad
public int kind()
Quad
Quad
. The enumerated values are defined in
QuadKind
.
kind
in class Quad
public Quad rename(QuadFactory qqf, TempMap defMap, TempMap useMap)
Quad
Quad
identical to the receiver, but
with all Temp
s renamed according to a mapping.
The new Quad
will have no edges.
The new Quad
will come from the specified
QuadFactory
.
rename
in class Quad
public void accept(QuadVisitor v)
Quad
accept
in class Quad
public <T> T accept(QuadValueVisitor<T> v)
accept
in class Quad
public String toString()
Quad
.
toString
in class Quad
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |