@HashCodeAndEqualsPlugin.Enhance protected static class FixedValue.ForConstantValue extends FixedValue implements FixedValue.AssignerConfigurable, ByteCodeAppender
FixedValue.AssignerConfigurable, FixedValue.ForArgument, FixedValue.ForConstantValue, FixedValue.ForNullValue, FixedValue.ForOriginType, FixedValue.ForThisValue, FixedValue.ForValue
Implementation.Composable, Implementation.Compound, Implementation.Context, Implementation.Simple, Implementation.SpecialMethodInvocation, Implementation.Target
InstrumentedType.Prepareable.NoOp
ByteCodeAppender.Compound, ByteCodeAppender.Simple, ByteCodeAppender.Size
assigner, typing
Modifier | Constructor and Description |
---|---|
protected |
ForConstantValue(StackManipulation valueLoadInstruction,
Class<?> loadedType)
Creates a new constant pool fixed value implementation.
|
protected |
ForConstantValue(StackManipulation valueLoadInstruction,
TypeDescription loadedType)
Creates a new constant pool fixed value implementation.
|
Modifier and Type | Method and Description |
---|---|
ByteCodeAppender |
appender(Implementation.Target implementationTarget)
Creates a byte code appender that determines the implementation of the instrumented type's methods.
|
ByteCodeAppender.Size |
apply(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
MethodDescription instrumentedMethod)
Applies this byte code appender to a type creation process.
|
InstrumentedType |
prepare(InstrumentedType instrumentedType)
Prepares a given instrumented type.
|
Implementation |
withAssigner(Assigner assigner,
Assigner.Typing typing)
Defines an explicit assigner to this fixed value implementation.
|
protected ForConstantValue(StackManipulation valueLoadInstruction, Class<?> loadedType)
valueLoadInstruction
- The instruction that is responsible for loading the constant pool value onto the
operand stack.loadedType
- A type description representing the loaded type.protected ForConstantValue(StackManipulation valueLoadInstruction, TypeDescription loadedType)
valueLoadInstruction
- The instruction that is responsible for loading the constant pool value onto the
operand stack.loadedType
- A type description representing the loaded type.public Implementation withAssigner(Assigner assigner, Assigner.Typing typing)
withAssigner
in interface FixedValue.AssignerConfigurable
assigner
- The assigner to use for assigning the fixed value to the return type of the
instrumented value.typing
- Indicates if dynamic type castings should be attempted for incompatible assignments.public InstrumentedType prepare(InstrumentedType instrumentedType)
prepare
in interface InstrumentedType.Prepareable
instrumentedType
- The instrumented type in its current form.public ByteCodeAppender appender(Implementation.Target implementationTarget)
appender
in interface Implementation
implementationTarget
- The target of the current implementation.InstrumentedType.Prepareable.prepare(InstrumentedType)
.public ByteCodeAppender.Size apply(MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)
apply
in interface ByteCodeAppender
methodVisitor
- The method visitor to which the byte code appender writes its code to.implementationContext
- The implementation context of the current type creation process.instrumentedMethod
- The method that is the target of the instrumentation.Copyright © 2014–2023. All rights reserved.