|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object joeq.Compiler.Analysis.FlowInsensitive.MethodSummary.Node
public abstract static class MethodSummary.Node
Field Summary | |
---|---|
protected Map |
accessPathEdges
Map from fields to sets of outside edges from this node on that field. |
protected Map |
addedEdges
Map from fields to sets of inside edges from this node on that field. |
int |
id
Unique id number. |
protected Set |
passedParameters
Set of passed parameters for this node. |
protected Map |
predecessors
Map from fields to sets of predecessors on that field. |
static boolean |
TRACK_REASONS
|
Constructor Summary | |
---|---|
protected |
MethodSummary.Node()
|
protected |
MethodSummary.Node(MethodSummary.Node that)
|
Method Summary | |
---|---|
boolean |
addAccessPathEdge(jq_Field m,
MethodSummary.FieldNode n)
Add the given successor node on the given field to the outside edge set. |
boolean |
addAccessPathEdges(jq_Field m,
Set s)
Add the given set of successor nodes on the given field to the outside edge set. |
boolean |
addEdge(jq_Field m,
MethodSummary.Node n)
Add the given successor node on the given field to the inside edge set. |
void |
addEdge(String edge,
jwutil.io.Textualizable t)
|
boolean |
addEdges(jq_Field m,
Set s)
Add the given set of successor nodes on the given field to the inside edge set. |
static boolean |
addEdges(Set s,
jq_Field f,
MethodSummary.Node n)
Add the given successor node on the given field to the inside edge set of all of the given set of nodes. |
boolean |
addPredecessor(jq_Field m,
MethodSummary.Node n)
Add the given predecessor node on the given field to the predecessor set. |
int |
compareTo(MethodSummary.Node that)
|
int |
compareTo(Object o)
|
abstract MethodSummary.Node |
copy()
Return a shallow copy of this node. |
Set |
getAccessPathEdgeFields()
Return the set of fields that this node has outside edges with. |
Set |
getAccessPathEdges()
Return a set of Map.Entry objects corresponding to the outside edges of this node. |
Set |
getAccessPathEdges(jq_Field m)
|
void |
getAccessPathEdges(jq_Field m,
Set result)
Add the nodes that are targets of outside edges on the given field to the given result set. |
Collection |
getAccessPathEdgeTargets()
Return the collection of target nodes that this node has inside edges with. |
Set |
getAllEdges()
|
Set |
getAllEdges(jq_Field m)
|
void |
getAllEdges(jq_Field m,
Set result)
Add the nodes that are targets of inside edges on the given field to the given result set. |
abstract jq_Reference |
getDeclaredType()
Return the declared type of this node. |
abstract jq_Method |
getDefiningMethod()
Return the method that this node is defined in, null if it doesn't come from a method. |
void |
getEdges_escaped(jq_Field m,
Set result)
Add the nodes that are targets of inside edges on the given field to the given result set. |
boolean |
getEscapes()
|
Set |
getNonEscapingEdgeFields()
Return the set of fields that this node has inside edges with. |
Set |
getNonEscapingEdges()
Return a set of Map.Entry objects corresponding to the inside edges of this node. |
Set |
getNonEscapingEdges(jq_Field m)
|
Collection |
getNonEscapingEdgeTargets()
Return the collection of target nodes that this node has inside edges with. |
Set |
getPassedParameters()
|
Set |
getPredecessors()
Return a set of Map.Entry objects corresponding to the incoming inside edges of this node. |
Collection |
getPredecessorTargets()
|
boolean |
hasAccessPathEdge(jq_Field m,
MethodSummary.Node n)
|
boolean |
hasAccessPathEdges()
Returns true if this node has any added outside edges. |
int |
hashCode()
|
boolean |
hasNonEscapingEdge(jq_Field m,
MethodSummary.Node n)
|
boolean |
hasNonEscapingEdges()
Returns true if this node has any added inside edges. |
boolean |
hasPredecessor(jq_Field f,
MethodSummary.Node n)
|
boolean |
isPassedAsParameter()
|
static int |
numberOfNodes()
Maps added edges to the quads that they come from. |
void |
readEdges(jwutil.collections.IndexMap map,
StringTokenizer st)
|
boolean |
recordPassedParameter(MethodSummary.PassedParameter cm)
Record the given passed parameter in the set for this node. |
boolean |
recordPassedParameter(ProgramLocation m,
int paramNum)
Record the passed parameter of the given method call and argument number in the set for this node. |
boolean |
removeAccessPathEdge(jq_Field m,
MethodSummary.FieldNode n)
Remove the given successor node on the given field from the outside edge set. |
boolean |
removeEdge(jq_Field m,
MethodSummary.Node n)
Remove the given successor node on the given field from the inside edge set. |
boolean |
removePredecessor(jq_Field m,
MethodSummary.Node n)
Remove the given predecessor node on the given field from the predecessor set. |
void |
replaceBy(Set set,
boolean removeSelf)
Replace this node by the given set of nodes. |
void |
setEscapes()
|
String |
toString_long()
Return a string representation of the node in long form. |
abstract String |
toString_short()
Return a string representation of the node in short form. |
String |
toString()
|
void |
update(HashMap um)
Update all predecessor and successor nodes with the given update map. |
void |
write(jwutil.io.Textualizer t)
|
void |
writeEdges(jwutil.io.Textualizer t)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected Map predecessors
protected Set passedParameters
protected Map addedEdges
protected Map accessPathEdges
public final int id
public static boolean TRACK_REASONS
Constructor Detail |
---|
protected MethodSummary.Node()
protected MethodSummary.Node(MethodSummary.Node that)
Method Detail |
---|
public static int numberOfNodes()
public int hashCode()
hashCode
in class Object
public final int compareTo(MethodSummary.Node that)
public final int compareTo(Object o)
compareTo
in interface Comparable
public boolean isPassedAsParameter()
public Set getPassedParameters()
public void replaceBy(Set set, boolean removeSelf)
public void update(HashMap um)
public abstract jq_Reference getDeclaredType()
public abstract jq_Method getDefiningMethod()
public abstract MethodSummary.Node copy()
public boolean hasPredecessor(jq_Field f, MethodSummary.Node n)
public boolean removePredecessor(jq_Field m, MethodSummary.Node n)
public boolean addPredecessor(jq_Field m, MethodSummary.Node n)
public Set getPredecessors()
public Collection getPredecessorTargets()
public boolean recordPassedParameter(MethodSummary.PassedParameter cm)
public boolean recordPassedParameter(ProgramLocation m, int paramNum)
public boolean removeEdge(jq_Field m, MethodSummary.Node n)
public boolean hasNonEscapingEdge(jq_Field m, MethodSummary.Node n)
public boolean addEdge(jq_Field m, MethodSummary.Node n)
public boolean addEdges(jq_Field m, Set s)
public static boolean addEdges(Set s, jq_Field f, MethodSummary.Node n)
public boolean removeAccessPathEdge(jq_Field m, MethodSummary.FieldNode n)
public boolean hasAccessPathEdge(jq_Field m, MethodSummary.Node n)
public boolean addAccessPathEdge(jq_Field m, MethodSummary.FieldNode n)
public boolean addAccessPathEdges(jq_Field m, Set s)
public final void getAllEdges(jq_Field m, Set result)
public final Set getAllEdges(jq_Field m)
public final Set getAllEdges()
public final Set getNonEscapingEdges(jq_Field m)
public void getEdges_escaped(jq_Field m, Set result)
public Set getNonEscapingEdges()
public Set getNonEscapingEdgeFields()
public Collection getNonEscapingEdgeTargets()
public boolean hasNonEscapingEdges()
public boolean hasAccessPathEdges()
public final Set getAccessPathEdges(jq_Field m)
public void getAccessPathEdges(jq_Field m, Set result)
public Set getAccessPathEdges()
public Set getAccessPathEdgeFields()
public Collection getAccessPathEdgeTargets()
public void setEscapes()
public boolean getEscapes()
public abstract String toString_short()
public String toString()
toString
in class Object
public String toString_long()
public void write(jwutil.io.Textualizer t) throws IOException
write
in interface jwutil.io.Textualizable
IOException
public void readEdges(jwutil.collections.IndexMap map, StringTokenizer st)
public void addEdge(String edge, jwutil.io.Textualizable t)
addEdge
in interface jwutil.io.Textualizable
public void writeEdges(jwutil.io.Textualizer t) throws IOException
writeEdges
in interface jwutil.io.Textualizable
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |