public static class FeatureImpl.DuringSetupAccessImpl extends FeatureImpl.FeatureAccessImpl implements org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess
Modifier and Type | Field and Description |
---|---|
protected Inflation |
bb |
debugContext, featureHandler, imageClassLoader
Modifier and Type | Method and Description |
---|---|
com.oracle.graal.pointsto.BigBang |
getBigBang() |
SVMHost |
getHostVM() |
com.oracle.graal.pointsto.meta.AnalysisMetaAccess |
getMetaAccess() |
com.oracle.graal.pointsto.meta.AnalysisUniverse |
getUniverse() |
boolean |
isReachable(com.oracle.graal.pointsto.meta.AnalysisField field) |
boolean |
isReachable(com.oracle.graal.pointsto.meta.AnalysisMethod method) |
boolean |
isReachable(com.oracle.graal.pointsto.meta.AnalysisType type) |
boolean |
isReachable(Class<?> clazz) |
boolean |
isReachable(Executable method) |
boolean |
isReachable(Field field) |
Set<Executable> |
reachableMethodOverrides(Executable baseMethod) |
Set<Class<?>> |
reachableSubtypes(Class<?> baseClass) |
void |
registerClassReachabilityListener(BiConsumer<org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess,Class<?>> listener)
Registers a listener that is notified for every class that is identified as reachable by
the analysis.
|
void |
registerNativeSubstitutionProcessor(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution) |
void |
registerObjectReplacer(Function<Object,Object> replacer) |
void |
registerSubstitutionProcessor(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution) |
findAnnotatedClasses, findAnnotatedFields, findAnnotatedMethods, findClassByName, findSubclasses, getApplicationClassLoader, getApplicationClassPath, getApplicationModulePath, getDebugContext, getFeatureHandler, getImageClassLoader
protected final Inflation bb
public void registerObjectReplacer(Function<Object,Object> replacer)
registerObjectReplacer
in interface org.graalvm.nativeimage.hosted.Feature.DuringSetupAccess
public void registerSubstitutionProcessor(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution)
public void registerNativeSubstitutionProcessor(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution)
public void registerClassReachabilityListener(BiConsumer<org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess,Class<?>> listener)
The listener is called during the analysis, at similar times as
Feature.duringAnalysis(org.graalvm.nativeimage.hosted.Feature.DuringAnalysisAccess)
. The first argument is a access
object that allows to query the analysis state. If the handler performs changes
the analysis universe, e.g., makes new types or methods reachable, it needs to call
Feature.DuringAnalysisAccess.requireAnalysisIteration()
to trigger a new iteration of the
analysis.
public SVMHost getHostVM()
public com.oracle.graal.pointsto.BigBang getBigBang()
public com.oracle.graal.pointsto.meta.AnalysisUniverse getUniverse()
public com.oracle.graal.pointsto.meta.AnalysisMetaAccess getMetaAccess()
public boolean isReachable(Class<?> clazz)
public boolean isReachable(com.oracle.graal.pointsto.meta.AnalysisType type)
public boolean isReachable(Field field)
public boolean isReachable(com.oracle.graal.pointsto.meta.AnalysisField field)
public boolean isReachable(Executable method)
public boolean isReachable(com.oracle.graal.pointsto.meta.AnalysisMethod method)
public Set<Executable> reachableMethodOverrides(Executable baseMethod)