public final class AllInstantiatedTypeFlow extends TypeFlow<AnalysisType>
TypeFlow.declaredType. This is a sub set
of the all assignable types. This flow is used for uses that need to be notified when a sub-type
of a specific type is marked as instantiated, e.g., a saturated field access type flow needs to
be notified when a sub-type of its declared type is marked as instantiated.
Note this flow should only be instantiated within AnalysisType. When needed, this flow should be
retrieved via calling AnalysisType.getTypeFlow(com.oracle.graal.pointsto.BigBang, boolean).| Constructor and Description |
|---|
AllInstantiatedTypeFlow(AnalysisType declaredType,
boolean canBeNull) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canSaturate()
Can this type flow saturate? By default all type flows can saturate, with the exception of a
few ones that need to track all their types, e.g., AllInstantiated, AllSynchronized, etc.
|
TypeFlow<AnalysisType> |
copy(PointsToAnalysis bb,
MethodFlowsGraph methodFlows)
By default a type flow is not cloneable.
|
String |
toString() |
addInput, addObservee, addObserver, addObserver, addState, addState, addUse, addUse, clearInputs, clearObservees, clearObservers, clearUses, declaredTypeFilter, declaredTypeFilter, doAddUse, equals, filter, filterUncheckedInterface, format, formatSource, getDeclaredType, getInputs, getObservees, getObservers, getSlot, getSource, getState, getUses, graphRef, hashCode, id, initFlow, invalidate, isAllInstantiated, isClone, isContextInsensitive, isSaturated, isValid, method, needsInitialization, notifyObserverOfSaturation, notifyUseOfSaturation, onInputSaturated, onObservedSaturated, onObservedUpdate, onSaturated, onSaturated, receiver, removeObserver, removeUse, replacedObservedWith, replaceObservedWith, setObserved, setSaturated, setSlot, setState, swapAtObserver, swapAtUse, swapOut, updatepublic AllInstantiatedTypeFlow(AnalysisType declaredType, boolean canBeNull)
public TypeFlow<AnalysisType> copy(PointsToAnalysis bb, MethodFlowsGraph methodFlows)
TypeFlowcopy in class TypeFlow<AnalysisType>public boolean canSaturate()
TypeFlowcanSaturate in class TypeFlow<AnalysisType>public String toString()
toString in class TypeFlow<AnalysisType>