Package soot.jimple.spark.pag
Class Node
- java.lang.Object
-
- soot.jimple.spark.pag.Node
-
- All Implemented Interfaces:
ReferenceVariable,Numberable
- Direct Known Subclasses:
AllocDotField,AllocNode,NewInstanceNode,ValNode
public class Node extends Object implements ReferenceVariable, Numberable
Represents every node in the pointer assignment graph.- Author:
- Ondrej Lhotak
-
-
Field Summary
Fields Modifier and Type Field Description protected PointsToSetInternalp2setprotected PAGpagprotected Nodereplacementprotected Typetype
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddiscardP2Set()Delete current points-to set and make a new onebooleanequals(Object other)intgetNumber()PointsToSetInternalgetP2Set()Returns the points-to set for this node.PAGgetPag()Returns the pointer assignment graph that this node is a part of.NodegetReplacement()If this node has been merged with another, returns the new node to be used as the representative of this node; returns this if the node has not been merged.TypegetType()Returns the declared type of this node, null for unknown.inthashCode()PointsToSetInternalmakeP2Set()Returns the points-to set for this node, makes it if necessary.voidmergeWith(Node other)Merge with the node other.voidsetNumber(int number)voidsetP2Set(PointsToSetInternal ptsInternal)Use the specified points-to set to replace current onevoidsetType(Type type)Sets the declared type of this node, null for unknown.
-
-
-
Field Detail
-
type
protected Type type
-
replacement
protected Node replacement
-
pag
protected PAG pag
-
p2set
protected PointsToSetInternal p2set
-
-
Method Detail
-
getType
public Type getType()
Returns the declared type of this node, null for unknown.
-
setType
public void setType(Type type)
Sets the declared type of this node, null for unknown.
-
getReplacement
public Node getReplacement()
If this node has been merged with another, returns the new node to be used as the representative of this node; returns this if the node has not been merged.
-
mergeWith
public void mergeWith(Node other)
Merge with the node other.
-
getP2Set
public PointsToSetInternal getP2Set()
Returns the points-to set for this node.
-
makeP2Set
public PointsToSetInternal makeP2Set()
Returns the points-to set for this node, makes it if necessary.
-
getPag
public PAG getPag()
Returns the pointer assignment graph that this node is a part of.
-
discardP2Set
public void discardP2Set()
Delete current points-to set and make a new one
-
setP2Set
public void setP2Set(PointsToSetInternal ptsInternal)
Use the specified points-to set to replace current one
-
getNumber
public final int getNumber()
- Specified by:
getNumberin interfaceNumberable
-
setNumber
public final void setNumber(int number)
- Specified by:
setNumberin interfaceNumberable
-
-