Package proguard.analysis.cpa.jvm.util
Class CfaUtil
- java.lang.Object
-
- proguard.analysis.cpa.jvm.util.CfaUtil
-
public class CfaUtil extends java.lang.ObjectThis is a util class for creatingCfas.
-
-
Constructor Summary
Constructors Constructor Description CfaUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static voidaddInterproceduralEdgesToCfa(JvmCfa cfa, CallGraph callGraph)Adds interprocedural arcs to the given CFA from the call graph.static JvmCfacreateInterproceduralCfa(ClassPool programClassPool)Create an interprocedural CFA from the given program class pool.static JvmCfacreateInterproceduralCfa(ClassPool programClassPool, CallGraph callGraph)Create an interprocedural CFA from the given program class pool and call graph.static JvmCfacreateInterproceduralCfa(ClassPool programClassPool, ClassPool libraryClassPool)Create an interprocedural CFA from the given program class pool.static JvmCfacreateInterproceduralCfaFromClassPool(ClassPool programClassPool)Deprecated.static JvmCfacreateInterproceduralCfaFromClassPool(ClassPool programClassPool, ClassPool libraryClassPool)Deprecated.static JvmCfacreateInterproceduralCfaFromClassPoolAndCallGraph(ClassPool programClassPool, CallGraph callGraph)Deprecated.static JvmCfacreateIntraproceduralCfa(ClassPool programClassPool)Returns a CFA for the given program class pool.static JvmCfacreateIntraproceduralCfa(ClassPool programClassPool, java.util.function.Supplier<java.lang.Boolean> shouldAnalyzeNextCodeAttribute)Returns a CFA for the given program class pool.static JvmCfacreateIntraproceduralCfaFromClassPool(ClassPool programClassPool)Deprecated.static JvmCfacreateIntraproceduralCfaFromClassPool(ClassPool programClassPool, java.util.function.Supplier<java.lang.Boolean> shouldAnalyzeNextCodeAttribute)Deprecated.static java.lang.StringtoDot(JvmCfa cfa)Produces a DOT graph representation of the given JVM control flow automaton.
-
-
-
Method Detail
-
createIntraproceduralCfaFromClassPool
@Deprecated public static JvmCfa createIntraproceduralCfaFromClassPool(ClassPool programClassPool)
Deprecated.Returns a CFA for the given program class pool.- Parameters:
programClassPool- a program class pool
-
createIntraproceduralCfa
public static JvmCfa createIntraproceduralCfa(ClassPool programClassPool)
Returns a CFA for the given program class pool.- Parameters:
programClassPool- a program class pool
-
createIntraproceduralCfaFromClassPool
@Deprecated public static JvmCfa createIntraproceduralCfaFromClassPool(ClassPool programClassPool, java.util.function.Supplier<java.lang.Boolean> shouldAnalyzeNextCodeAttribute)
Deprecated.Returns a CFA for the given program class pool. Allows to limit the number of processed code attributes withshouldAnalyzeNextCodeAttribute.- Parameters:
programClassPool- a program class pool
-
createIntraproceduralCfa
public static JvmCfa createIntraproceduralCfa(ClassPool programClassPool, java.util.function.Supplier<java.lang.Boolean> shouldAnalyzeNextCodeAttribute)
Returns a CFA for the given program class pool. Allows to limit the number of processed code attributes withshouldAnalyzeNextCodeAttribute.- Parameters:
programClassPool- a program class pool
-
addInterproceduralEdgesToCfa
public static void addInterproceduralEdgesToCfa(JvmCfa cfa, CallGraph callGraph)
Adds interprocedural arcs to the given CFA from the call graph.- Parameters:
cfa- a CFAcallGraph- a call graph
-
createInterproceduralCfaFromClassPoolAndCallGraph
@Deprecated public static JvmCfa createInterproceduralCfaFromClassPoolAndCallGraph(ClassPool programClassPool, CallGraph callGraph)
Deprecated.Create an interprocedural CFA from the given program class pool and call graph.- Parameters:
programClassPool- a program class poolcallGraph- a call graph
-
createInterproceduralCfa
public static JvmCfa createInterproceduralCfa(ClassPool programClassPool, CallGraph callGraph)
Create an interprocedural CFA from the given program class pool and call graph.- Parameters:
programClassPool- a program class poolcallGraph- a call graph
-
createInterproceduralCfaFromClassPool
@Deprecated public static JvmCfa createInterproceduralCfaFromClassPool(ClassPool programClassPool)
Deprecated.Create an interprocedural CFA from the given program class pool.- Parameters:
programClassPool- a program class pool
-
createInterproceduralCfa
public static JvmCfa createInterproceduralCfa(ClassPool programClassPool)
Create an interprocedural CFA from the given program class pool.- Parameters:
programClassPool- a program class pool
-
createInterproceduralCfaFromClassPool
@Deprecated public static JvmCfa createInterproceduralCfaFromClassPool(ClassPool programClassPool, ClassPool libraryClassPool)
Deprecated.Create an interprocedural CFA from the given program class pool.- Parameters:
programClassPool- a program class pool
-
createInterproceduralCfa
public static JvmCfa createInterproceduralCfa(ClassPool programClassPool, ClassPool libraryClassPool)
Create an interprocedural CFA from the given program class pool.- Parameters:
programClassPool- a program class pool
-
toDot
public static java.lang.String toDot(JvmCfa cfa)
Produces a DOT graph representation of the given JVM control flow automaton.
-
-