class net.sf.cglib.core.EmitUtils$6 implements net.sf.cglib.core.ProcessSwitchCallback
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: net.sf.cglib.core.EmitUtils$6
super_class: java.lang.Object
{
private final java.util.Map val$buckets;
descriptor: Ljava/util/Map;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final boolean val$skipEquals;
descriptor: Z
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final net.sf.cglib.core.CodeEmitter val$e;
descriptor: Lnet/sf/cglib/core/CodeEmitter;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final net.sf.cglib.core.ObjectSwitchCallback val$callback;
descriptor: Lnet/sf/cglib/core/ObjectSwitchCallback;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.objectweb.asm.Label val$end;
descriptor: Lorg/objectweb/asm/Label;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.objectweb.asm.Label val$def;
descriptor: Lorg/objectweb/asm/Label;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(java.util.Map, boolean, net.sf.cglib.core.CodeEmitter, net.sf.cglib.core.ObjectSwitchCallback, org.objectweb.asm.Label, org.objectweb.asm.Label);
descriptor: (Ljava/util/Map;ZLnet/sf/cglib/core/CodeEmitter;Lnet/sf/cglib/core/ObjectSwitchCallback;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;)V
flags: (0x0000)
Code:
stack=2, locals=7, args_size=7
start local 0 0: aload 0
aload 1
putfield net.sf.cglib.core.EmitUtils$6.val$buckets:Ljava/util/Map;
aload 0
iload 2
putfield net.sf.cglib.core.EmitUtils$6.val$skipEquals:Z
aload 0
aload 3
putfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
aload 0
aload 4
putfield net.sf.cglib.core.EmitUtils$6.val$callback:Lnet/sf/cglib/core/ObjectSwitchCallback;
aload 0
aload 5
putfield net.sf.cglib.core.EmitUtils$6.val$end:Lorg/objectweb/asm/Label;
aload 0
aload 6
putfield net.sf.cglib.core.EmitUtils$6.val$def:Lorg/objectweb/asm/Label;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/EmitUtils$6;
MethodParameters:
Name Flags
val$buckets final
val$skipEquals final
val$e final
val$callback final
val$end final
val$def final
public void processCase(int, org.objectweb.asm.Label);
descriptor: (ILorg/objectweb/asm/Label;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$buckets:Ljava/util/Map;
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 3
start local 3 1: aconst_null
astore 4
start local 4 2: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$skipEquals:Z
ifeq 7
aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 7
3: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$skipEquals:Z
ifeq 5
4: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
invokevirtual net.sf.cglib.core.CodeEmitter.pop:()V
5: StackMap locals: java.util.List org.objectweb.asm.Label
StackMap stack:
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$callback:Lnet/sf/cglib/core/ObjectSwitchCallback;
aload 3
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$end:Lorg/objectweb/asm/Label;
invokeinterface net.sf.cglib.core.ObjectSwitchCallback.processCase:(Ljava/lang/Object;Lorg/objectweb/asm/Label;)V
6: goto 23
7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
start local 5 8: goto 22
9: StackMap locals: java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 10: aload 4
ifnull 12
11: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
aload 4
invokevirtual net.sf.cglib.core.CodeEmitter.mark:(Lorg/objectweb/asm/Label;)V
12: StackMap locals: java.lang.String
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 14
13: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
invokevirtual net.sf.cglib.core.CodeEmitter.dup:()V
14: StackMap locals:
StackMap stack:
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.push:(Ljava/lang/String;)V
15: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
getstatic net.sf.cglib.core.Constants.TYPE_OBJECT:Lorg/objectweb/asm/Type;
getstatic net.sf.cglib.core.EmitUtils.EQUALS:Lnet/sf/cglib/core/Signature;
invokevirtual net.sf.cglib.core.CodeEmitter.invoke_virtual:(Lorg/objectweb/asm/Type;Lnet/sf/cglib/core/Signature;)V
16: aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 20
17: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
sipush 153
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
invokevirtual net.sf.cglib.core.CodeEmitter.make_label:()Lorg/objectweb/asm/Label;
dup
astore 4
invokevirtual net.sf.cglib.core.CodeEmitter.if_jump:(ILorg/objectweb/asm/Label;)V
18: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
invokevirtual net.sf.cglib.core.CodeEmitter.pop:()V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
sipush 153
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$def:Lorg/objectweb/asm/Label;
invokevirtual net.sf.cglib.core.CodeEmitter.if_jump:(ILorg/objectweb/asm/Label;)V
21: StackMap locals:
StackMap stack:
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$callback:Lnet/sf/cglib/core/ObjectSwitchCallback;
aload 6
aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$end:Lorg/objectweb/asm/Label;
invokeinterface net.sf.cglib.core.ObjectSwitchCallback.processCase:(Ljava/lang/Object;Lorg/objectweb/asm/Label;)V
end local 6 22: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
end local 5 23: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lnet/sf/cglib/core/EmitUtils$6;
0 24 1 key I
0 24 2 ignore_end Lorg/objectweb/asm/Label;
1 24 3 bucket Ljava/util/List;
2 24 4 next Lorg/objectweb/asm/Label;
8 23 5 it Ljava/util/Iterator;
10 22 6 string Ljava/lang/String;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
key
ignore_end
public void processDefault();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sf.cglib.core.EmitUtils$6.val$e:Lnet/sf/cglib/core/CodeEmitter;
invokevirtual net.sf.cglib.core.CodeEmitter.pop:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/EmitUtils$6;
}
SourceFile: "EmitUtils.java"
EnclosingMethod: net.sf.cglib.core.EmitUtils.string_switch_hash:(Lnet/sf/cglib/core/CodeEmitter;[Ljava/lang/String;Lnet/sf/cglib/core/ObjectSwitchCallback;Z)V
NestHost: net.sf.cglib.core.EmitUtils
InnerClasses:
net.sf.cglib.core.EmitUtils$6