public interface ConstantFieldProvider
| Modifier and Type | Interface and Description |
|---|---|
static interface |
ConstantFieldProvider.ConstantFieldTool<T> |
| Modifier and Type | Method and Description |
|---|---|
default boolean |
maybeFinal(ResolvedJavaField field)
Returns
true if a field may be constant folded even though it is not declared as
final. |
<T> T |
readConstantField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool)
Decide whether a read from the
field should be constant folded. |
<T> T readConstantField(ResolvedJavaField field,
ConstantFieldProvider.ConstantFieldTool<T> tool)
field 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.default boolean maybeFinal(ResolvedJavaField field)
true if a field may be constant folded even though it is not declared as
final. This applies to well-known fields such as String#hash.