Class PathEnumerator
- java.lang.Object
-
- com.ensoftcorp.open.commons.algorithms.PathEnumerator
-
public class PathEnumerator extends java.lang.Object
Utilities for enumerating paths through a CFG- Author:
- Ben Holland
-
-
Constructor Summary
Constructors Constructor Description PathEnumerator()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>>
getPaths(com.ensoftcorp.atlas.core.db.graph.Node function)
Returns the set of paths through the CFG of the given function from the control flow root to the control flow exitsstatic java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>>
getPaths(com.ensoftcorp.atlas.core.query.Q cfg)
Returns the set of paths through the CFG from the control flow root to the control flow exitsstatic java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>>
getPaths(com.ensoftcorp.atlas.core.query.Q cfg, com.ensoftcorp.atlas.core.db.set.AtlasSet<com.ensoftcorp.atlas.core.db.graph.Node> sources, com.ensoftcorp.atlas.core.db.set.AtlasSet<com.ensoftcorp.atlas.core.db.graph.Node> targets)
Returns the set of paths through the CFG from a set of source nodes to the set of target nodesstatic java.lang.String
printPath(java.util.List<com.ensoftcorp.atlas.core.db.graph.Node> path)
Returns a string representing the path through the CFG
-
-
-
Method Detail
-
printPath
public static java.lang.String printPath(java.util.List<com.ensoftcorp.atlas.core.db.graph.Node> path)
Returns a string representing the path through the CFG- Parameters:
path
-
-
getPaths
public static java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>> getPaths(com.ensoftcorp.atlas.core.db.graph.Node function)
Returns the set of paths through the CFG of the given function from the control flow root to the control flow exits- Parameters:
function
-- Returns:
-
getPaths
public static java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>> getPaths(com.ensoftcorp.atlas.core.query.Q cfg)
Returns the set of paths through the CFG from the control flow root to the control flow exits- Parameters:
cfg
-- Returns:
-
getPaths
public static java.util.List<java.util.List<com.ensoftcorp.atlas.core.db.graph.Node>> getPaths(com.ensoftcorp.atlas.core.query.Q cfg, com.ensoftcorp.atlas.core.db.set.AtlasSet<com.ensoftcorp.atlas.core.db.graph.Node> sources, com.ensoftcorp.atlas.core.db.set.AtlasSet<com.ensoftcorp.atlas.core.db.graph.Node> targets)
Returns the set of paths through the CFG from a set of source nodes to the set of target nodes- Parameters:
cfg
-sources
-targets
-- Returns:
-
-