@HashCodeAndEqualsPlugin.Enhance public static class MemberSubstitution.Substitution.Chain.Step.Simple extends Object implements MemberSubstitution.Substitution.Chain.Step<MemberSubstitution.Target>, MemberSubstitution.Substitution.Chain.Step.Factory<MemberSubstitution.Target>, MemberSubstitution.Substitution.Chain.Step.Resolution
MemberSubstitution.Substitution.Chain.Step.Factory<V extends MemberSubstitution.Target>, MemberSubstitution.Substitution.Chain.Step.ForArgumentLoading, MemberSubstitution.Substitution.Chain.Step.ForArgumentSubstitution, MemberSubstitution.Substitution.Chain.Step.ForAssignment, MemberSubstitution.Substitution.Chain.Step.ForDelegation, MemberSubstitution.Substitution.Chain.Step.ForField, MemberSubstitution.Substitution.Chain.Step.ForInvocation, MemberSubstitution.Substitution.Chain.Step.OfOriginalExpression, MemberSubstitution.Substitution.Chain.Step.Resolution, MemberSubstitution.Substitution.Chain.Step.Simple
Constructor and Description |
---|
Simple(StackManipulation stackManipulation,
Type resultType)
Creates a new simple substitution step.
|
Simple(StackManipulation stackManipulation,
TypeDescription.Generic resultType)
Creates a new simple substitution step.
|
Modifier and Type | Method and Description |
---|---|
TypeDescription.Generic |
getResultType()
Returns the resulting type of the substitution or
void if no resulting value is applied. |
StackManipulation |
getStackManipulation()
Returns the stack manipulation to apply the substitution.
|
MemberSubstitution.Substitution.Chain.Step<MemberSubstitution.Target> |
make(Assigner assigner,
Assigner.Typing typing,
TypeDescription instrumentedType,
MethodDescription instrumentedMethod)
Creates a substitution step for an instrumented method.
|
static MemberSubstitution.Substitution.Chain.Step.Factory<MemberSubstitution.Target> |
of(Object value)
Resolves a compile-time constant as the next step value.
|
MemberSubstitution.Substitution.Chain.Step.Resolution |
resolve(MemberSubstitution.Target target,
TypeList.Generic parameters,
TypeDescription.Generic result,
JavaConstant.MethodHandle methodHandle,
StackManipulation stackManipulation,
TypeDescription.Generic current,
Map<Integer,Integer> offsets,
int freeOffset)
Resolves this step of a substitution chain.
|
public Simple(StackManipulation stackManipulation, Type resultType)
stackManipulation
- The stack manipulation to apply.resultType
- The resulting type of applying the stack manipulation.public Simple(StackManipulation stackManipulation, TypeDescription.Generic resultType)
stackManipulation
- The stack manipulation to apply.resultType
- The resulting type of applying the stack manipulation.public static MemberSubstitution.Substitution.Chain.Step.Factory<MemberSubstitution.Target> of(Object value)
value
- The compile-time constant to resolve.public MemberSubstitution.Substitution.Chain.Step<MemberSubstitution.Target> make(Assigner assigner, Assigner.Typing typing, TypeDescription instrumentedType, MethodDescription instrumentedMethod)
make
in interface MemberSubstitution.Substitution.Chain.Step.Factory<MemberSubstitution.Target>
assigner
- The assigner to use.typing
- The typing to use.instrumentedType
- The instrumented type.instrumentedMethod
- The instrumented method.public MemberSubstitution.Substitution.Chain.Step.Resolution resolve(MemberSubstitution.Target target, TypeList.Generic parameters, TypeDescription.Generic result, JavaConstant.MethodHandle methodHandle, StackManipulation stackManipulation, TypeDescription.Generic current, Map<Integer,Integer> offsets, int freeOffset)
resolve
in interface MemberSubstitution.Substitution.Chain.Step<MemberSubstitution.Target>
target
- The target member of invokedynamic invocation.parameters
- The parameters of the substituted element.result
- The resulting type of the substituted element.methodHandle
- A method handle of the stackManipulation invocation that is being substituted.stackManipulation
- The byte code instruction that is being substituted.current
- The current type of the applied substitution that is the top element on the operand stack.offsets
- The arguments of the substituted byte code element mapped to their local variable offsets.freeOffset
- The first free offset in the local variable array.public StackManipulation getStackManipulation()
getStackManipulation
in interface MemberSubstitution.Substitution.Chain.Step.Resolution
public TypeDescription.Generic getResultType()
void
if no resulting value is applied.getResultType
in interface MemberSubstitution.Substitution.Chain.Step.Resolution
void
if no resulting value is applied.Copyright © 2014–2025. All rights reserved.