public abstract class JavaConstantFieldProvider extends Object implements ConstantFieldProvider
ConstantFieldProvider.ConstantFieldTool<T>| Modifier | Constructor and Description |
|---|---|
protected |
JavaConstantFieldProvider(MetaAccessProvider metaAccess) |
| Modifier and Type | Method and Description |
|---|---|
protected <T> T |
foldStableArray(JavaConstant value,
ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool) |
protected boolean |
isDefaultStableField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool) |
protected boolean |
isFinalField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool) |
protected boolean |
isFinalFieldValueConstant(ResolvedJavaField field,
JavaConstant value,
ConstantFieldProvider.ConstantFieldTool<?> tool) |
protected boolean |
isPrimitiveBoxingCacheField(ResolvedJavaField field) |
protected boolean |
isStableField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool) |
protected boolean |
isStableFieldValueConstant(ResolvedJavaField field,
JavaConstant value,
ConstantFieldProvider.ConstantFieldTool<?> tool) |
protected boolean |
isSyntheticEnumSwitchMap(ResolvedJavaField field) |
protected boolean |
isWellKnownImplicitStableField(ResolvedJavaField field) |
<T> T |
readConstantField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool)
Decide whether a read from the
field should be constant folded. |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitmaybeFinalprotected JavaConstantFieldProvider(MetaAccessProvider metaAccess)
public <T> T readConstantField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool)
ConstantFieldProviderfield should be constant folded. This should return
ConstantFieldProvider.ConstantFieldTool.foldConstant(JavaConstant) or ConstantFieldProvider.ConstantFieldTool.foldStableArray(JavaConstant, int, boolean) if the
read should be constant folded, or null otherwise.readConstantField in interface ConstantFieldProviderprotected <T> T foldStableArray(JavaConstant value,
ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool)
protected boolean isStableFieldValueConstant(ResolvedJavaField field,
JavaConstant value,
ConstantFieldProvider.ConstantFieldTool<?> tool)
protected boolean isFinalFieldValueConstant(ResolvedJavaField field,
JavaConstant value,
ConstantFieldProvider.ConstantFieldTool<?> tool)
protected boolean isStableField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool)
protected boolean isPrimitiveBoxingCacheField(ResolvedJavaField field)
protected boolean isDefaultStableField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool)
protected boolean isFinalField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<?> tool)
protected boolean isSyntheticEnumSwitchMap(ResolvedJavaField field)
protected boolean isWellKnownImplicitStableField(ResolvedJavaField field)