public final class net.bytebuddy.implementation.bind.annotation.This$Binder extends java.lang.Enum<net.bytebuddy.implementation.bind.annotation.This$Binder> implements net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder$ParameterBinder<net.bytebuddy.implementation.bind.annotation.This>
minor version: 0
major version: 59
flags: flags: (0x4031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ANNOTATION
this_class: net.bytebuddy.implementation.bind.annotation.This$Binder
super_class: java.lang.Enum
{
public static final net.bytebuddy.implementation.bind.annotation.This$Binder INSTANCE;
descriptor: Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
flags: (0x4019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_ANNOTATION
private static final net.bytebuddy.implementation.bind.annotation.This$Binder[] ENUM$VALUES;
descriptor: [Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
flags: (0x101a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new net.bytebuddy.implementation.bind.annotation.This$Binder
dup
ldc "INSTANCE"
iconst_0
invokespecial net.bytebuddy.implementation.bind.annotation.This$Binder.<init>:(Ljava/lang/String;I)V
1: putstatic net.bytebuddy.implementation.bind.annotation.This$Binder.INSTANCE:Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
2: iconst_1
anewarray net.bytebuddy.implementation.bind.annotation.This$Binder
dup
iconst_0
getstatic net.bytebuddy.implementation.bind.annotation.This$Binder.INSTANCE:Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
aastore
putstatic net.bytebuddy.implementation.bind.annotation.This$Binder.ENUM$VALUES:[Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 0: aload 0
aload 1
iload 2
invokespecial java.lang.Enum.<init>:(Ljava/lang/String;I)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
MethodParameters:
Name Flags
$enum$name
$enum$ordinal
public java.lang.Class<net.bytebuddy.implementation.bind.annotation.This> getHandledType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc Lnet/bytebuddy/implementation/bind/annotation/This;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
Signature: ()Ljava/lang/Class<Lnet/bytebuddy/implementation/bind/annotation/This;>;
public net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding<?> bind(net.bytebuddy.description.annotation.AnnotationDescription$Loadable<net.bytebuddy.implementation.bind.annotation.This>, net.bytebuddy.description.method.MethodDescription, net.bytebuddy.description.method.ParameterDescription, net.bytebuddy.implementation.Implementation$Target, net.bytebuddy.implementation.bytecode.assign.Assigner, net.bytebuddy.implementation.bytecode.assign.Assigner$Typing);
descriptor: (Lnet/bytebuddy/description/annotation/AnnotationDescription$Loadable;Lnet/bytebuddy/description/method/MethodDescription;Lnet/bytebuddy/description/method/ParameterDescription;Lnet/bytebuddy/implementation/Implementation$Target;Lnet/bytebuddy/implementation/bytecode/assign/Assigner;Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;)Lnet/bytebuddy/implementation/bind/MethodDelegationBinder$ParameterBinding;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 3
invokeinterface net.bytebuddy.description.method.ParameterDescription.getType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
invokeinterface net.bytebuddy.description.type.TypeDescription$Generic.isPrimitive:()Z
ifeq 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " uses a primitive type with a @This annotation"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 3
invokeinterface net.bytebuddy.description.method.ParameterDescription.getType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
invokeinterface net.bytebuddy.description.type.TypeDescription$Generic.isArray:()Z
ifeq 4
3: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " uses an array type with a @This annotation"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 2
invokeinterface net.bytebuddy.description.method.MethodDescription.isStatic:()Z
ifeq 6
aload 1
invokeinterface net.bytebuddy.description.annotation.AnnotationDescription$Loadable.loadSilent:()Ljava/lang/annotation/Annotation;
checkcast net.bytebuddy.implementation.bind.annotation.This
invokeinterface net.bytebuddy.implementation.bind.annotation.This.optional:()Z
ifne 6
5: getstatic net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding$Illegal.INSTANCE:Lnet/bytebuddy/implementation/bind/MethodDelegationBinder$ParameterBinding$Illegal;
areturn
6: StackMap locals:
StackMap stack:
new net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding$Anonymous
dup
aload 2
invokeinterface net.bytebuddy.description.method.MethodDescription.isStatic:()Z
ifeq 8
7: getstatic net.bytebuddy.implementation.bytecode.constant.NullConstant.INSTANCE:Lnet/bytebuddy/implementation/bytecode/constant/NullConstant;
goto 11
8: StackMap locals: net.bytebuddy.implementation.bind.annotation.This$Binder net.bytebuddy.description.annotation.AnnotationDescription$Loadable net.bytebuddy.description.method.MethodDescription net.bytebuddy.description.method.ParameterDescription net.bytebuddy.implementation.Implementation$Target net.bytebuddy.implementation.bytecode.assign.Assigner net.bytebuddy.implementation.bytecode.assign.Assigner$Typing
StackMap stack: new 6 new 6
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
9: aload 5
aload 4
invokeinterface net.bytebuddy.implementation.Implementation$Target.getInstrumentedType:()Lnet/bytebuddy/description/type/TypeDescription;
invokeinterface net.bytebuddy.description.type.TypeDescription.asGenericType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
aload 3
invokeinterface net.bytebuddy.description.method.ParameterDescription.getType:()Lnet/bytebuddy/description/type/TypeDescription$Generic;
aload 6
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;
10: aastore
invokespecial net.bytebuddy.implementation.bytecode.StackManipulation$Compound.<init>:([Lnet/bytebuddy/implementation/bytecode/StackManipulation;)V
11: StackMap locals: net.bytebuddy.implementation.bind.annotation.This$Binder net.bytebuddy.description.annotation.AnnotationDescription$Loadable net.bytebuddy.description.method.MethodDescription net.bytebuddy.description.method.ParameterDescription net.bytebuddy.implementation.Implementation$Target net.bytebuddy.implementation.bytecode.assign.Assigner net.bytebuddy.implementation.bytecode.assign.Assigner$Typing
StackMap stack: new 6 new 6 net.bytebuddy.implementation.bytecode.StackManipulation
invokespecial net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding$Anonymous.<init>:(Lnet/bytebuddy/implementation/bytecode/StackManipulation;)V
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
0 12 1 annotation Lnet/bytebuddy/description/annotation/AnnotationDescription$Loadable<Lnet/bytebuddy/implementation/bind/annotation/This;>;
0 12 2 source Lnet/bytebuddy/description/method/MethodDescription;
0 12 3 target Lnet/bytebuddy/description/method/ParameterDescription;
0 12 4 implementationTarget Lnet/bytebuddy/implementation/Implementation$Target;
0 12 5 assigner Lnet/bytebuddy/implementation/bytecode/assign/Assigner;
0 12 6 typing Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;
Signature: (Lnet/bytebuddy/description/annotation/AnnotationDescription$Loadable<Lnet/bytebuddy/implementation/bind/annotation/This;>;Lnet/bytebuddy/description/method/MethodDescription;Lnet/bytebuddy/description/method/ParameterDescription;Lnet/bytebuddy/implementation/Implementation$Target;Lnet/bytebuddy/implementation/bytecode/assign/Assigner;Lnet/bytebuddy/implementation/bytecode/assign/Assigner$Typing;)Lnet/bytebuddy/implementation/bind/MethodDelegationBinder$ParameterBinding<*>;
MethodParameters:
Name Flags
annotation
source
target
implementationTarget
assigner
typing
public static net.bytebuddy.implementation.bind.annotation.This$Binder[] values();
descriptor: ()[Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=0
0: getstatic net.bytebuddy.implementation.bind.annotation.This$Binder.ENUM$VALUES:[Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
dup
astore 0
iconst_0
aload 0
arraylength
dup
istore 1
anewarray net.bytebuddy.implementation.bind.annotation.This$Binder
dup
astore 2
iconst_0
iload 1
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
aload 2
areturn
LocalVariableTable:
Start End Slot Name Signature
public static net.bytebuddy.implementation.bind.annotation.This$Binder valueOf(java.lang.String);
descriptor: (Ljava/lang/String;)Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
0: ldc Lnet/bytebuddy/implementation/bind/annotation/This$Binder;
aload 0
invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
checkcast net.bytebuddy.implementation.bind.annotation.This$Binder
areturn
LocalVariableTable:
Start End Slot Name Signature
MethodParameters:
Name Flags
name
}
Signature: Ljava/lang/Enum<Lnet/bytebuddy/implementation/bind/annotation/This$Binder;>;Lnet/bytebuddy/implementation/bind/annotation/TargetMethodAnnotationDrivenBinder$ParameterBinder<Lnet/bytebuddy/implementation/bind/annotation/This;>;
SourceFile: "This.java"
NestHost: net.bytebuddy.implementation.bind.annotation.This
InnerClasses:
public abstract Loadable = net.bytebuddy.description.annotation.AnnotationDescription$Loadable of net.bytebuddy.description.annotation.AnnotationDescription
public abstract Generic = net.bytebuddy.description.type.TypeDescription$Generic of net.bytebuddy.description.type.TypeDescription
public abstract Target = net.bytebuddy.implementation.Implementation$Target of net.bytebuddy.implementation.Implementation
public abstract ParameterBinding = net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding of net.bytebuddy.implementation.bind.MethodDelegationBinder
public Anonymous = net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding$Anonymous of net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding
public final Illegal = net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding$Illegal of net.bytebuddy.implementation.bind.MethodDelegationBinder$ParameterBinding
public abstract ParameterBinder = net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder$ParameterBinder of net.bytebuddy.implementation.bind.annotation.TargetMethodAnnotationDrivenBinder
public final Binder = net.bytebuddy.implementation.bind.annotation.This$Binder of net.bytebuddy.implementation.bind.annotation.This
public Compound = net.bytebuddy.implementation.bytecode.StackManipulation$Compound of net.bytebuddy.implementation.bytecode.StackManipulation
public final Typing = net.bytebuddy.implementation.bytecode.assign.Assigner$Typing of net.bytebuddy.implementation.bytecode.assign.Assigner