@HashCodeAndEqualsPlugin.Enhance protected static class DefaultMethodCall.Appender extends java.lang.Object implements ByteCodeAppender
DefaultMethodCall
.ByteCodeAppender.Compound, ByteCodeAppender.Simple, ByteCodeAppender.Size
Modifier and Type | Field and Description |
---|---|
private Implementation.Target |
implementationTarget
The implementation target of this appender.
|
private java.util.Set<TypeDescription> |
nonPrioritizedInterfaces
The relevant non-prioritized interfaces to be considered by this appender.
|
private java.util.List<TypeDescription> |
prioritizedInterfaces
The relevant prioritized interfaces to be considered by this appender.
|
Modifier | Constructor and Description |
---|---|
protected |
Appender(Implementation.Target implementationTarget,
java.util.List<TypeDescription> prioritizedInterfaces)
Creates a new appender for implementing a
DefaultMethodCall . |
Modifier and Type | Method and Description |
---|---|
ByteCodeAppender.Size |
apply(org.objectweb.asm.MethodVisitor methodVisitor,
Implementation.Context implementationContext,
MethodDescription instrumentedMethod)
Applies this byte code appender to a type creation process.
|
private StackManipulation |
locateDefault(MethodDescription methodDescription)
Locates a special method invocation to be invoked from a given method.
|
private final Implementation.Target implementationTarget
private final java.util.List<TypeDescription> prioritizedInterfaces
@HashCodeAndEqualsPlugin.ValueHandling(value=IGNORE) private final java.util.Set<TypeDescription> nonPrioritizedInterfaces
protected Appender(Implementation.Target implementationTarget, java.util.List<TypeDescription> prioritizedInterfaces)
DefaultMethodCall
.implementationTarget
- The implementation target of this appender.prioritizedInterfaces
- The relevant prioritized interfaces to be considered by this appender.public ByteCodeAppender.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)
apply
in interface ByteCodeAppender
methodVisitor
- The method visitor to which the byte code appender writes its code to.implementationContext
- The implementation context of the current type creation process.instrumentedMethod
- The method that is the target of the instrumentation.private StackManipulation locateDefault(MethodDescription methodDescription)
methodDescription
- The method that is currently instrumented.