Package sootup.callgraph
Interface MutableLabeledCallGraph<L>
- Type Parameters:
L- the type of the labels attached to the calls
- All Superinterfaces:
CallGraph,LabeledCallGraph<L>,MutableCallGraph
- All Known Implementing Classes:
LabeledGraphBasedCallGraph
A mutable call graph whose calls (edges) can carry labels of type
L.-
Nested Class Summary
Nested classes/interfaces inherited from interface sootup.callgraph.CallGraph
CallGraph.Call -
Method Summary
Modifier and TypeMethodDescriptiondefault voidaddCall(@NonNull CallGraph.Call call, @NonNull L label) This method adds a call to the call graph if it is not contained yet and attaches the given label to it.voidaddLabel(@NonNull CallGraph.Call call, @NonNull L label) This method attaches a label to a call in the call graph.booleanremoveLabel(@NonNull CallGraph.Call call, @NonNull L label) This method removes a label from a call in the call graph.Methods inherited from interface sootup.callgraph.CallGraph
callCount, callsFrom, callSourcesTo, callsTo, callTargetsFrom, containsCall, containsCall, containsMethod, diff, exportAsDot, exportAsDot, getCalls, getEntryMethods, getMethodSignatures, sortedCallsFromMethods inherited from interface sootup.callgraph.LabeledCallGraph
callsFrom, callsTo, copy, getLabels, hasLabel, toDotEdgeMethods inherited from interface sootup.callgraph.MutableCallGraph
addCall, addCall, addMethod
-
Method Details
-
addLabel
This method attaches a label to a call in the call graph. A call can carry several labels. A label that is already attached to the call is not added a second time.- Parameters:
call- the call the label is attached to. It must be contained in the call graph.label- the label that will be attached to the call- Throws:
IllegalArgumentException- if the call is not contained in the call graph
-
removeLabel
This method removes a label from a call in the call graph.- Parameters:
call- the call the label is removed fromlabel- the label that will be removed- Returns:
- true if the label was attached to the call, otherwise false
-
addCall
This method adds a call to the call graph if it is not contained yet and attaches the given label to it.- Parameters:
call- the call that will be added to the call graphlabel- the label that will be attached to the call
-