public class ReachableMethods
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected QueueReader<MethodOrMethodContext> |
allReachables |
protected CallGraph |
cg |
protected java.util.Iterator<Edge> |
edgeSource |
protected Filter |
filter |
protected ChunkedQueue<MethodOrMethodContext> |
reachables |
protected java.util.Set<MethodOrMethodContext> |
set |
protected QueueReader<MethodOrMethodContext> |
unprocessedMethods |
Constructor and Description |
---|
ReachableMethods(CallGraph graph,
java.util.Collection<? extends MethodOrMethodContext> entryPoints) |
ReachableMethods(CallGraph graph,
java.util.Iterator<? extends MethodOrMethodContext> entryPoints) |
ReachableMethods(CallGraph graph,
java.util.Iterator<? extends MethodOrMethodContext> entryPoints,
Filter filter) |
Modifier and Type | Method and Description |
---|---|
protected void |
addMethod(MethodOrMethodContext m) |
protected void |
addMethods(java.util.Iterator<? extends MethodOrMethodContext> methods) |
boolean |
contains(MethodOrMethodContext m)
Returns true iff method is reachable.
|
QueueReader<MethodOrMethodContext> |
listener()
Returns a QueueReader object containing all methods found reachable so far,
and which will be informed of any new methods that are later found to be
reachable.
|
QueueReader<MethodOrMethodContext> |
newListener()
Returns a QueueReader object which will contain ONLY NEW methods which will
be found to be reachable, but not those that have already been found to be
reachable.
|
int |
size()
Returns the number of methods that are reachable.
|
void |
update()
Causes the QueueReader objects to be filled up with any methods that have
become reachable since the last call.
|
protected CallGraph cg
protected java.util.Iterator<Edge> edgeSource
protected final ChunkedQueue<MethodOrMethodContext> reachables
protected final java.util.Set<MethodOrMethodContext> set
protected QueueReader<MethodOrMethodContext> unprocessedMethods
protected final QueueReader<MethodOrMethodContext> allReachables
protected Filter filter
public ReachableMethods(CallGraph graph, java.util.Iterator<? extends MethodOrMethodContext> entryPoints)
public ReachableMethods(CallGraph graph, java.util.Iterator<? extends MethodOrMethodContext> entryPoints, Filter filter)
public ReachableMethods(CallGraph graph, java.util.Collection<? extends MethodOrMethodContext> entryPoints)
protected void addMethods(java.util.Iterator<? extends MethodOrMethodContext> methods)
protected void addMethod(MethodOrMethodContext m)
public void update()
public QueueReader<MethodOrMethodContext> listener()
public QueueReader<MethodOrMethodContext> newListener()
public boolean contains(MethodOrMethodContext m)
public int size()