Package net.bytebuddy.asm
Class MemberSubstitution.Replacement.Binding.Resolved
- java.lang.Object
-
- net.bytebuddy.asm.MemberSubstitution.Replacement.Binding.Resolved
-
- All Implemented Interfaces:
MemberSubstitution.Replacement.Binding
- Enclosing interface:
- MemberSubstitution.Replacement.Binding
@Enhance public static class MemberSubstitution.Replacement.Binding.Resolved extends java.lang.Object implements MemberSubstitution.Replacement.Binding
A binding that was resolved for an actual substitution.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.MemberSubstitution.Replacement.Binding
MemberSubstitution.Replacement.Binding.Resolved, MemberSubstitution.Replacement.Binding.Unresolved
-
-
Field Summary
Fields Modifier and Type Field Description private MethodDescriptioninstrumentedMethodThe instrumented method.private TypeDescriptioninstrumentedTypeThe instrumented type.private MemberSubstitution.SubstitutionsubstitutionThe substitution to apply.private ByteCodeElementtargetThe field or method that was accessed.private TypeDescriptiontargetTypeThe type on which a field or method was accessed.
-
Constructor Summary
Constructors Modifier Constructor Description protectedResolved(TypeDescription instrumentedType, MethodDescription instrumentedMethod, TypeDescription targetType, ByteCodeElement target, MemberSubstitution.Substitution substitution)Creates a new resolved binding.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisBound()Returnstrueif this binding is resolved.StackManipulationmake(TypeList.Generic parameters, TypeDescription.Generic result, int freeOffset)Creates a stack manipulation that represents the substitution.
-
-
-
Field Detail
-
instrumentedType
private final TypeDescription instrumentedType
The instrumented type.
-
instrumentedMethod
private final MethodDescription instrumentedMethod
The instrumented method.
-
targetType
private final TypeDescription targetType
The type on which a field or method was accessed.
-
target
private final ByteCodeElement target
The field or method that was accessed.
-
substitution
private final MemberSubstitution.Substitution substitution
The substitution to apply.
-
-
Constructor Detail
-
Resolved
protected Resolved(TypeDescription instrumentedType, MethodDescription instrumentedMethod, TypeDescription targetType, ByteCodeElement target, MemberSubstitution.Substitution substitution)
Creates a new resolved binding.- Parameters:
instrumentedType- The instrumented type.instrumentedMethod- The instrumented method.targetType- The type on which a field or method was accessed.target- The field or method that was accessed.substitution- The substitution to apply.
-
-
Method Detail
-
isBound
public boolean isBound()
Returnstrueif this binding is resolved.- Specified by:
isBoundin interfaceMemberSubstitution.Replacement.Binding- Returns:
trueif this binding is resolved.
-
make
public StackManipulation make(TypeList.Generic parameters, TypeDescription.Generic result, int freeOffset)
Creates a stack manipulation that represents the substitution. This method can only be called for actually bound bindings.- Specified by:
makein interfaceMemberSubstitution.Replacement.Binding- Parameters:
parameters- The parameters that are accessible to the substitution target.result- The result that is expected from the substitution target orvoidif none is expected.freeOffset- The first offset that can be used for storing local variables.- Returns:
- A stack manipulation that represents the replacement.
-
-