public class MethodNodeHandler extends Object
| Constructor and Description |
|---|
MethodNodeHandler() |
| Modifier and Type | Method and Description |
|---|---|
Optional<DataFlowNode> |
handleNode(DataFlowGraph graph,
DataFlowMethod method,
Map<com.github.javaparser.ast.Node,DataFlowNode> overriddenValues,
com.github.javaparser.ast.Node n,
OwnedNode<?> owner)
Recursively creates new
DataFlowNode or finds existing ones and creates DataFlowEdge between those nodes if needed. |
public Optional<DataFlowNode> handleNode(DataFlowGraph graph, DataFlowMethod method, Map<com.github.javaparser.ast.Node,DataFlowNode> overriddenValues, com.github.javaparser.ast.Node n, OwnedNode<?> owner)
DataFlowNode or finds existing ones and creates DataFlowEdge between those nodes if needed. This is done within the
scope of a single method. This method assumes all methods to already exist in the DataFlowGraph, including the DataFlowNodes for the input
parameters and return value. If external method calls are done, NodeCalls representing them will also be created.graph - DataFlowGraphmethod - DataFlowMethod to add DataFlowNode tooverriddenValues - The values that have been overridden in previous iterations.n - The Node to handle. ChildNodes will recursively be handled if needed.owner - The owner for the node to be created. This variable might be removed later, giving the caller of this method the responsibility to set the
owner.DataFlowNode of the input node. If multiple head nodes are created, (In case of a BlockStmt) the optional will
be empty.Copyright © 2019. All rights reserved.