Package net.bytebuddy.asm
Class MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.ForDynamicInvocation.Resolved
java.lang.Object
net.bytebuddy.asm.MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.ForDynamicInvocation.Resolved
- All Implemented Interfaces:
MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved
- Enclosing class:
MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.ForDynamicInvocation
@Enhance
protected static class MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.ForDynamicInvocation.Resolved
extends Object
implements MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved
A resolved dispatcher for a dynamically bound method invocation.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final MethodDescription.InDefinedShape
The bootstrap method.private final MethodDescription.InDefinedShape
The delegation target.private final MemberSubstitution.Substitution.Chain.Step.ForDelegation.BootstrapArgumentResolver.Resolved
The bootstrap argument resolver to use. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Resolved
(MethodDescription.InDefinedShape bootstrapMethod, MethodDescription.InDefinedShape delegate, MemberSubstitution.Substitution.Chain.Step.ForDelegation.BootstrapArgumentResolver.Resolved resolver) Creates a resolved dispatcher of a dynamic method dispatcher. -
Method Summary
Modifier and TypeMethodDescriptionapply
(TypeDescription receiver, ByteCodeElement.Member original, JavaConstant.MethodHandle methodHandle) Creates a stack manipulation for a given substitution target.
-
Field Details
-
bootstrapMethod
The bootstrap method. -
delegate
The delegation target. -
resolver
private final MemberSubstitution.Substitution.Chain.Step.ForDelegation.BootstrapArgumentResolver.Resolved resolverThe bootstrap argument resolver to use.
-
-
Constructor Details
-
Resolved
protected Resolved(MethodDescription.InDefinedShape bootstrapMethod, MethodDescription.InDefinedShape delegate, MemberSubstitution.Substitution.Chain.Step.ForDelegation.BootstrapArgumentResolver.Resolved resolver) Creates a resolved dispatcher of a dynamic method dispatcher.- Parameters:
bootstrapMethod
- The bootstrap method.delegate
- The delegation target.resolver
- The bootstrap argument resolver to use.
-
-
Method Details
-
initialize
- Specified by:
initialize
in interfaceMemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved
-
apply
public StackManipulation apply(TypeDescription receiver, ByteCodeElement.Member original, JavaConstant.MethodHandle methodHandle) Creates a stack manipulation for a given substitution target.- Specified by:
apply
in interfaceMemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved
- Parameters:
receiver
- The type upon which the substituted element is invoked upon.original
- The substituted element.methodHandle
- A method handle that describes the invocation.- Returns:
- A stack manipulation that executes the represented delegation.
-