@HashCodeAndEqualsPlugin.Enhance public static class MemberSubstitution.Substitution.Chain.Step.ForDelegation extends Object implements MemberSubstitution.Substitution.Chain.Step
Modifier and Type | Class and Description |
---|---|
static interface |
MemberSubstitution.Substitution.Chain.Step.ForDelegation.BootstrapArgumentResolver
A resolver for supplying arguments to a bootstrap method which is binding the delegation method's invocation.
|
protected static interface |
MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher
A dispatcher for invoking a delegation method.
|
protected static class |
MemberSubstitution.Substitution.Chain.Step.ForDelegation.Factory
A factory for creating a delegating step during a member substitution.
|
static interface |
MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping
An offset mapping for binding a parameter or dispatch target for the method or constructor that is delegated to.
|
static class |
MemberSubstitution.Substitution.Chain.Step.ForDelegation.WithCustomMapping
A factory for a
MemberSubstitution.Substitution.Chain.Step.ForDelegation which allows for a custom configuration. |
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
Modifier | Constructor and Description |
---|---|
protected |
ForDelegation(TypeDescription.Generic returned,
MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved dispatcher,
List<MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved> offsetMappings) |
protected ForDelegation(TypeDescription.Generic returned, MemberSubstitution.Substitution.Chain.Step.ForDelegation.Dispatcher.Resolved dispatcher, List<MemberSubstitution.Substitution.Chain.Step.ForDelegation.OffsetMapping.Resolved> offsetMappings)
returned
- The type on top of the stack after the delegation is complete.dispatcher
- The dispatcher to use.offsetMappings
- A list of offset mappings to execute prior to delegation.public static MemberSubstitution.Substitution.Chain.Step.Factory to(Method method)
method
- The method to delegate to.public static MemberSubstitution.Substitution.Chain.Step.Factory to(Constructor<?> constructor)
constructor
- The constructor to delegate to.public static MemberSubstitution.Substitution.Chain.Step.Factory to(MethodDescription.InDefinedShape methodDescription)
methodDescription
- A description of the method or constructor to delegate to.public static MemberSubstitution.Substitution.Chain.Step.ForDelegation.WithCustomMapping withCustomMapping()
MemberSubstitution.Substitution.Chain.Step.ForDelegation
with custom configuration.public MemberSubstitution.Substitution.Chain.Step.Resolution resolve(TypeDescription receiver, ByteCodeElement.Member original, 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
receiver
- The target result type of the substitution.original
- The byte code element that is currently substituted.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.Copyright © 2014–2023. All rights reserved.