class net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender implements net.bytebuddy.implementation.bytecode.ByteCodeAppender
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender
super_class: java.lang.Object
{
private final net.bytebuddy.description.type.TypeDescription instrumentedType;
descriptor: Lnet/bytebuddy/description/type/TypeDescription;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall this$3;
descriptor: Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall, net.bytebuddy.description.type.TypeDescription);
descriptor: (Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;Lnet/bytebuddy/description/type/TypeDescription;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 // net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender this
start local 2 // net.bytebuddy.description.type.TypeDescription instrumentedType
0: .line 467
aload 0 /* this */
aload 1
putfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 468
aload 0 /* this */
aload 2 /* instrumentedType */
putfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
2: .line 469
return
end local 2 // net.bytebuddy.description.type.TypeDescription instrumentedType
end local 0 // net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall$Appender;
0 3 2 instrumentedType Lnet/bytebuddy/description/type/TypeDescription;
MethodParameters:
Name Flags
this$0 final
instrumentedType
public net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size apply(org.objectweb.asm.MethodVisitor, net.bytebuddy.implementation.Implementation$Context, net.bytebuddy.description.method.MethodDescription);
descriptor: (Lorg/objectweb/asm/MethodVisitor;Lnet/bytebuddy/implementation/Implementation$Context;Lnet/bytebuddy/description/method/MethodDescription;)Lnet/bytebuddy/implementation/bytecode/ByteCodeAppender$Size;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=9, args_size=4
start local 0 // net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender this
start local 1 // org.objectweb.asm.MethodVisitor methodVisitor
start local 2 // net.bytebuddy.implementation.Implementation$Context implementationContext
start local 3 // net.bytebuddy.description.method.MethodDescription instrumentedMethod
0: .line 477
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.instrumentedType:Lnet/bytebuddy/description/type/TypeDescription;
invokeinterface net.bytebuddy.description.type.TypeDescription.getDeclaredFields:()Lnet/bytebuddy/description/field/FieldList;
astore 4 /* fieldList */
start local 4 // net.bytebuddy.description.field.FieldList fieldList
1: .line 478
aload 4 /* fieldList */
invokeinterface net.bytebuddy.description.field.FieldList.size:()I
anewarray net.bytebuddy.implementation.bytecode.StackManipulation
astore 5 /* fieldLoading */
start local 5 // net.bytebuddy.implementation.bytecode.StackManipulation[] fieldLoading
2: .line 479
iconst_0
istore 6 /* index */
start local 6 // int index
3: .line 480
aload 4 /* fieldList */
invokeinterface net.bytebuddy.description.field.FieldList.iterator:()Ljava/util/Iterator;
astore 8
goto 6
StackMap locals: net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender org.objectweb.asm.MethodVisitor net.bytebuddy.implementation.Implementation$Context net.bytebuddy.description.method.MethodDescription net.bytebuddy.description.field.FieldList net.bytebuddy.implementation.bytecode.StackManipulation[] int top java.util.Iterator
StackMap stack:
4: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast net.bytebuddy.description.field.FieldDescription
astore 7 /* fieldDescription */
start local 7 // net.bytebuddy.description.field.FieldDescription fieldDescription
5: .line 481
aload 5 /* fieldLoading */
iload 6 /* index */
iinc 6 /* index */ 1
new net.bytebuddy.implementation.bytecode.StackManipulation$Compound
dup
iconst_2
anewarray net.bytebuddy.implementation.bytecode.StackManipulation
dup
iconst_0
invokestatic net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.loadThis:()Lnet/bytebuddy/implementation/bytecode/StackManipulation;
aastore
dup
iconst_1
aload 7 /* fieldDescription */
invokestatic net.bytebuddy.implementation.bytecode.member.FieldAccess.forField:(Lnet/bytebuddy/description/field/FieldDescription;)Lnet/bytebuddy/implementation/bytecode/member/FieldAccess$Defined;
invokeinterface net.bytebuddy.implementation.bytecode.member.FieldAccess$Defined.read:()Lnet/bytebuddy/implementation/bytecode/StackManipulation;
aastore
invokespecial net.bytebuddy.implementation.bytecode.StackManipulation$Compound.<init>:([Lnet/bytebuddy/implementation/bytecode/StackManipulation;)V
aastore
end local 7 // net.bytebuddy.description.field.FieldDescription fieldDescription
6: .line 480
StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: .line 483
new net.bytebuddy.implementation.bytecode.StackManipulation$Compound
dup
bipush 6
anewarray net.bytebuddy.implementation.bytecode.StackManipulation
dup
iconst_0
8: .line 484
getstatic net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.REFERENCE:Lnet/bytebuddy/implementation/bytecode/member/MethodVariableAccess;
iconst_1
invokevirtual net.bytebuddy.implementation.bytecode.member.MethodVariableAccess.loadFrom:(I)Lnet/bytebuddy/implementation/bytecode/StackManipulation;
aastore
dup
iconst_1
9: .line 485
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall.assigner:Lnet/bytebuddy/implementation/bytecode/assign/Assigner;
getstatic net.bytebuddy.description.type.TypeDescription$Generic.OBJECT:Lnet/bytebuddy/description/type/TypeDescription$Generic;
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall.redirectedMethod:Lnet/bytebuddy/description/method/MethodDescription;
invokeinterface net.bytebuddy.description.method.MethodDescription.getDeclaringType:()Lnet/bytebuddy/description/type/TypeDefinition;
invokeinterface net.bytebuddy.description.type.TypeDefinition.asGenericType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
getstatic net.bytebuddy.implementation.bytecode.assign.Assigner$Typing.DYNAMIC:Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;
invokeinterface net.bytebuddy.implementation.bytecode.assign.Assigner.assign:(Lnet/bytebuddy/description/type/TypeDescription$Generic;Lnet/bytebuddy/description/type/TypeDescription$Generic;Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;)Lnet/bytebuddy/implementation/bytecode/StackManipulation;
aastore
dup
iconst_2
10: .line 486
new net.bytebuddy.implementation.bytecode.StackManipulation$Compound
dup
aload 5 /* fieldLoading */
invokespecial net.bytebuddy.implementation.bytecode.StackManipulation$Compound.<init>:([Lnet/bytebuddy/implementation/bytecode/StackManipulation;)V
aastore
dup
iconst_3
11: .line 487
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall.redirectedMethod:Lnet/bytebuddy/description/method/MethodDescription;
invokestatic net.bytebuddy.implementation.bytecode.member.MethodInvocation.invoke:(Lnet/bytebuddy/description/method/MethodDescription;)Lnet/bytebuddy/implementation/bytecode/member/MethodInvocation$WithImplicitInvocationTargetType;
aastore
dup
iconst_4
12: .line 488
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall.assigner:Lnet/bytebuddy/implementation/bytecode/assign/Assigner;
aload 0 /* this */
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender.this$3:Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall;
getfield net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall.redirectedMethod:Lnet/bytebuddy/description/method/MethodDescription;
invokeinterface net.bytebuddy.description.method.MethodDescription.getReturnType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
aload 3 /* instrumentedMethod */
invokeinterface net.bytebuddy.description.method.MethodDescription.getReturnType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
getstatic net.bytebuddy.implementation.bytecode.assign.Assigner$Typing.DYNAMIC:Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;
invokeinterface net.bytebuddy.implementation.bytecode.assign.Assigner.assign:(Lnet/bytebuddy/description/type/TypeDescription$Generic;Lnet/bytebuddy/description/type/TypeDescription$Generic;Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;)Lnet/bytebuddy/implementation/bytecode/StackManipulation;
aastore
dup
iconst_5
13: .line 489
getstatic net.bytebuddy.implementation.bytecode.member.MethodReturn.REFERENCE:Lnet/bytebuddy/implementation/bytecode/member/MethodReturn;
14: .line 483
aastore
invokespecial net.bytebuddy.implementation.bytecode.StackManipulation$Compound.<init>:([Lnet/bytebuddy/implementation/bytecode/StackManipulation;)V
15: .line 490
aload 1 /* methodVisitor */
aload 2 /* implementationContext */
invokevirtual net.bytebuddy.implementation.bytecode.StackManipulation$Compound.apply:(Lorg/objectweb/asm/MethodVisitor;Lnet/bytebuddy/implementation/Implementation$Context;)Lnet/bytebuddy/implementation/bytecode/StackManipulation$Size;
16: .line 483
astore 7 /* stackSize */
start local 7 // net.bytebuddy.implementation.bytecode.StackManipulation$Size stackSize
17: .line 491
new net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size
dup
aload 7 /* stackSize */
invokevirtual net.bytebuddy.implementation.bytecode.StackManipulation$Size.getMaximalSize:()I
aload 3 /* instrumentedMethod */
invokeinterface net.bytebuddy.description.method.MethodDescription.getStackSize:()I
invokespecial net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size.<init>:(II)V
areturn
end local 7 // net.bytebuddy.implementation.bytecode.StackManipulation$Size stackSize
end local 6 // int index
end local 5 // net.bytebuddy.implementation.bytecode.StackManipulation[] fieldLoading
end local 4 // net.bytebuddy.description.field.FieldList fieldList
end local 3 // net.bytebuddy.description.method.MethodDescription instrumentedMethod
end local 2 // net.bytebuddy.implementation.Implementation$Context implementationContext
end local 1 // org.objectweb.asm.MethodVisitor methodVisitor
end local 0 // net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lnet/bytebuddy/implementation/bind/annotation/Pipe$Binder$Redirection$MethodCall$Appender;
0 18 1 methodVisitor Lorg/objectweb/asm/MethodVisitor;
0 18 2 implementationContext Lnet/bytebuddy/implementation/Implementation$Context;
0 18 3 instrumentedMethod Lnet/bytebuddy/description/method/MethodDescription;
1 18 4 fieldList Lnet/bytebuddy/description/field/FieldList<*>;
2 18 5 fieldLoading [Lnet/bytebuddy/implementation/bytecode/StackManipulation;
3 18 6 index I
5 6 7 fieldDescription Lnet/bytebuddy/description/field/FieldDescription;
17 18 7 stackSize Lnet/bytebuddy/implementation/bytecode/StackManipulation$Size;
MethodParameters:
Name Flags
methodVisitor
implementationContext
instrumentedMethod
}
SourceFile: "Pipe.java"
NestHost: net.bytebuddy.implementation.bind.annotation.Pipe
InnerClasses:
public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
public abstract InDefinedShape = net.bytebuddy.description.field.FieldDescription$InDefinedShape of net.bytebuddy.description.field.FieldDescription
public abstract Generic = net.bytebuddy.description.type.TypeDescription$Generic of net.bytebuddy.description.type.TypeDescription
public abstract Context = net.bytebuddy.implementation.Implementation$Context of net.bytebuddy.implementation.Implementation
public Binder = net.bytebuddy.implementation.bind.annotation.Pipe$Binder of net.bytebuddy.implementation.bind.annotation.Pipe
protected Redirection = net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection of net.bytebuddy.implementation.bind.annotation.Pipe$Binder
protected MethodCall = net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall of net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection
private Appender = net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall$Appender of net.bytebuddy.implementation.bind.annotation.Pipe$Binder$Redirection$MethodCall
public Size = net.bytebuddy.implementation.bytecode.ByteCodeAppender$Size of net.bytebuddy.implementation.bytecode.ByteCodeAppender
public Compound = net.bytebuddy.implementation.bytecode.StackManipulation$Compound of net.bytebuddy.implementation.bytecode.StackManipulation
public Size = net.bytebuddy.implementation.bytecode.StackManipulation$Size of net.bytebuddy.implementation.bytecode.StackManipulation
public final Typing = net.bytebuddy.implementation.bytecode.assign.Assigner$Typing of net.bytebuddy.implementation.bytecode.assign.Assigner
public abstract Defined = net.bytebuddy.implementation.bytecode.member.FieldAccess$Defined of net.bytebuddy.implementation.bytecode.member.FieldAccess
public abstract WithImplicitInvocationTargetType = net.bytebuddy.implementation.bytecode.member.MethodInvocation$WithImplicitInvocationTargetType of net.bytebuddy.implementation.bytecode.member.MethodInvocation
RuntimeVisibleAnnotations:
net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance(includeSyntheticFields = true)