Package net.bytebuddy.asm
Class MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.ForArgument.Resolved
- java.lang.Object
-
- net.bytebuddy.asm.MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.ForArgument.Resolved
-
- All Implemented Interfaces:
MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved
@Enhance protected static class MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.ForArgument.Resolved extends java.lang.Object implements MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved
A resolved offset mapping to the parameter of either the instrumented method or the substituted element.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved
MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved.ForStackManipulation
-
-
Field Summary
Fields Modifier and Type Field Description private AssignerassignerThe assigner to use.private intindexThe index of the parameter.private MethodDescriptioninstrumentedMethodThe instrumented method.private booleanoptionaltrueifnullor a primitive0should be assigned to the parameter if the provided index is not available.private MemberSubstitution.SourcesourceThe source providing the argument.private TypeDescription.GenerictargetTypeThe targeted type.private Assigner.TypingtypingThe typing to use when assigning.
-
Constructor Summary
Constructors Modifier Constructor Description protectedResolved(TypeDescription.Generic targetType, int index, Assigner.Typing typing, MemberSubstitution.Source source, boolean optional, Assigner assigner, MethodDescription instrumentedMethod)Creates a resolved offset mapping for assigning a parameter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StackManipulationapply(MemberSubstitution.Target target, TypeList.Generic parameters, TypeDescription.Generic result, TypeDescription.Generic current, JavaConstant.MethodHandle methodHandle, java.util.Map<java.lang.Integer,java.lang.Integer> offsets, int offset)Applies this offset mapping.
-
-
-
Field Detail
-
targetType
private final TypeDescription.Generic targetType
The targeted type.
-
index
private final int index
The index of the parameter.
-
typing
private final Assigner.Typing typing
The typing to use when assigning.
-
source
private final MemberSubstitution.Source source
The source providing the argument.
-
optional
private final boolean optional
trueifnullor a primitive0should be assigned to the parameter if the provided index is not available.
-
assigner
private final Assigner assigner
The assigner to use.
-
instrumentedMethod
private final MethodDescription instrumentedMethod
The instrumented method.
-
-
Constructor Detail
-
Resolved
protected Resolved(TypeDescription.Generic targetType, int index, Assigner.Typing typing, MemberSubstitution.Source source, boolean optional, Assigner assigner, MethodDescription instrumentedMethod)
Creates a resolved offset mapping for assigning a parameter.- Parameters:
targetType- The targeted type.index- The index of the parameter.typing- The typing to use when assigning.source- The source providing the argument.optional-trueifnullor a primitive0should be assigned to the parameter if the provided index is not available.assigner- The assigner to use.instrumentedMethod- The instrumented method.
-
-
Method Detail
-
apply
public StackManipulation apply(MemberSubstitution.Target target, TypeList.Generic parameters, TypeDescription.Generic result, TypeDescription.Generic current, JavaConstant.MethodHandle methodHandle, java.util.Map<java.lang.Integer,java.lang.Integer> offsets, int offset)
Applies this offset mapping.- Specified by:
applyin interfaceMemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved- Parameters:
target- The target member of invokedynamic invocation.parameters- The parameters that are supplied to the substituted expression.result- The resulting type of the substituted expression.current- The type of the value that was produced by the previous step in the substitution chain.methodHandle- A method handle that represents the substituted element.offsets- The offsets of the supplied parameters.offset- The offset of the value that was produced by the previous step.- Returns:
- An appropriate stack manipulation.
-
-