@HashCodeAndEqualsPlugin.Enhance public static class InvokeDynamic.InvocationProvider.ArgumentProvider.ForField extends Object implements InvokeDynamic.InvocationProvider.ArgumentProvider
| Modifier and Type | Class and Description |
|---|---|
protected static class |
InvokeDynamic.InvocationProvider.ArgumentProvider.ForField.WithExplicitType
An argument provider for a field value with an explicit type.
|
InvokeDynamic.InvocationProvider.ArgumentProvider.ConstantPoolWrapper, InvokeDynamic.InvocationProvider.ArgumentProvider.ForBooleanConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForByteConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForCharacterConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForClassConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForDoubleConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForEnumerationValue, InvokeDynamic.InvocationProvider.ArgumentProvider.ForField, InvokeDynamic.InvocationProvider.ArgumentProvider.ForFloatConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForInstance, InvokeDynamic.InvocationProvider.ArgumentProvider.ForIntegerConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForInterceptedMethodInstanceAndParameters, InvokeDynamic.InvocationProvider.ArgumentProvider.ForInterceptedMethodParameters, InvokeDynamic.InvocationProvider.ArgumentProvider.ForJavaConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForLongConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForMethodParameter, InvokeDynamic.InvocationProvider.ArgumentProvider.ForNullValue, InvokeDynamic.InvocationProvider.ArgumentProvider.ForShortConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForStringConstant, InvokeDynamic.InvocationProvider.ArgumentProvider.ForThisInstance, InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved| Modifier and Type | Field and Description |
|---|---|
protected FieldLocator.Factory |
fieldLocatorFactory
The field locator factory to use.
|
protected String |
fieldName
The name of the field.
|
| Modifier | Constructor and Description |
|---|---|
protected |
ForField(String fieldName,
FieldLocator.Factory fieldLocatorFactory)
Creates a new argument provider that loads the value of an existing field.
|
| Modifier and Type | Method and Description |
|---|---|
protected InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved |
doResolve(StackManipulation access,
TypeDescription.Generic type,
Assigner assigner,
Assigner.Typing typing)
Resolves this argument provider.
|
InstrumentedType |
prepare(InstrumentedType instrumentedType)
Prepares the instrumented type.
|
InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved |
resolve(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
Assigner assigner,
Assigner.Typing typing)
Resolves an argument provider.
|
protected final String fieldName
protected final FieldLocator.Factory fieldLocatorFactory
protected ForField(String fieldName, FieldLocator.Factory fieldLocatorFactory)
fieldName - The name of the field.fieldLocatorFactory - The field locator factory to use.public InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, Assigner assigner, Assigner.Typing typing)
resolve in interface InvokeDynamic.InvocationProvider.ArgumentProviderinstrumentedType - The instrumented type.instrumentedMethod - The instrumented method.assigner - The assigner to be used.typing - Indicates if dynamic type castings should be attempted for incompatible assignments.protected InvokeDynamic.InvocationProvider.ArgumentProvider.Resolved doResolve(StackManipulation access, TypeDescription.Generic type, Assigner assigner, Assigner.Typing typing)
access - The stack manipulation for accessing the argument value.type - The type of the loaded value.assigner - The assigner to use.typing - The typing required.public InstrumentedType prepare(InstrumentedType instrumentedType)
prepare in interface InvokeDynamic.InvocationProvider.ArgumentProviderinstrumentedType - The instrumented type.Copyright © 2014–2023. All rights reserved.