类 ValueAnalyzer.Builder
- java.lang.Object
-
- proguard.analysis.cpa.util.ValueAnalyzer.Builder
-
- 封闭类:
- ValueAnalyzer
public static class ValueAnalyzer.Builder extends java.lang.ObjectClass to configure and build aValueAnalyzer.Each separate built
ValueAnalyzeruses its ownBamCache, so different analyzers won't share results, while all execution ofValueAnalyzer.analyze(MethodSignature)from the same analyzer will use the same cache.
-
-
构造器概要
构造器 构造器 说明 Builder(JvmCfa cfa, ClassPool programClassPool, ClassPool libraryClassPool)Create a builder for aValueAnalyzerusing a defaultExecutingInvocationUnit.Builder(JvmCfa cfa, ExecutingInvocationUnit.Builder invocationUnitBuilder)Create a builder for aValueAnalyzerusing a customExecutingInvocationUnit.
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 ValueAnalyzerbuild()Build aValueAnalyzer.ValueAnalyzer.BuildersetAbortOperator(AbortOperator abortOperator)Sets the abort operator to allow premature CPA algorithm termination.ValueAnalyzer.BuildersetMaxCallStackDepth(int maxCallStackDepth)Set the max depth call depth of the inter-procedural analysis.
-
-
-
构造器详细资料
-
Builder
public Builder(JvmCfa cfa, ClassPool programClassPool, ClassPool libraryClassPool)
Create a builder for aValueAnalyzerusing a defaultExecutingInvocationUnit.The
InvocationUnitdefines how to handle invocations ofLibraryMethods through customExecutors.The only executor for the default invocation unit is
StringReflectionExecutor.
-
Builder
public Builder(JvmCfa cfa, ExecutingInvocationUnit.Builder invocationUnitBuilder)
Create a builder for aValueAnalyzerusing a customExecutingInvocationUnit.The
InvocationUnitdefines how to handle invocations ofLibraryMethods.
-
-
方法详细资料
-
build
public ValueAnalyzer build()
Build aValueAnalyzer.
-
setMaxCallStackDepth
public ValueAnalyzer.Builder setMaxCallStackDepth(int maxCallStackDepth)
Set the max depth call depth of the inter-procedural analysis. After the max depth has been reached, the analysis will provide a default result for the method (i.e., in the same wayLibraryMethods are usually not analyzed).The default value is 10.
- 参数:
maxCallStackDepth- maximum depth of the call stack analyzed inter-procedurally. 0 means intra-procedural analysis. < 0 means no maximum depth.- 返回:
- this
ValueAnalyzerbuilder.
-
setAbortOperator
public ValueAnalyzer.Builder setAbortOperator(AbortOperator abortOperator)
Sets the abort operator to allow premature CPA algorithm termination.The default operator never aborts the analysis.
- 参数:
abortOperator- anAbortOperator.- 返回:
- this
ValueAnalyzerbuilder.
-
-