public class FlatInstantiator extends Object implements IInstantiator
Constructor and Description |
---|
FlatInstantiator(VolatileMethodSummary body,
TypeSafeInstructionFactory instructionFactory,
SSAValueManager pm,
IClassHierarchy cha,
MethodReference scope,
AnalysisScope analysisScope) |
FlatInstantiator(VolatileMethodSummary body,
TypeSafeInstructionFactory instructionFactory,
SSAValueManager pm,
IClassHierarchy cha,
MethodReference scope,
AnalysisScope analysisScope,
int maxDepth) |
Modifier and Type | Method and Description |
---|---|
protected void |
addCallCtor(SSAValue self,
MethodReference ctor,
List<SSAValue> ctorParams)
Add a call to the given constructor to the body.
|
SSAValue |
createInstance(TypeReference T,
boolean asManaged,
SSAValue.VariableKey key,
Set<? extends SSAValue> seen)
Creates a new instance of type calling all that's necessary.
|
int |
createInstance(TypeReference type,
Object... instantiatorArgs)
Satisfy the interface.
|
public FlatInstantiator(VolatileMethodSummary body, TypeSafeInstructionFactory instructionFactory, SSAValueManager pm, IClassHierarchy cha, MethodReference scope, AnalysisScope analysisScope)
public FlatInstantiator(VolatileMethodSummary body, TypeSafeInstructionFactory instructionFactory, SSAValueManager pm, IClassHierarchy cha, MethodReference scope, AnalysisScope analysisScope, int maxDepth)
public SSAValue createInstance(TypeReference T, boolean asManaged, SSAValue.VariableKey key, Set<? extends SSAValue> seen)
protected void addCallCtor(SSAValue self, MethodReference ctor, List<SSAValue> ctorParams)
self
- the "this" to call the constructor onctor
- the constructor to callparams
- parameters to the ctor _without_ implicit thispublic int createInstance(TypeReference type, Object... instantiatorArgs)
createInstance
in interface IInstantiator
type
- Type to generate an instance frominstantiatorArgs
- passed through utility functions