public class sun.jvm.hotspot.utilities.soql.JSJavaMethod extends sun.jvm.hotspot.utilities.soql.JSMetadata
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.soql.JSJavaMethod
super_class: sun.jvm.hotspot.utilities.soql.JSMetadata
{
private static final int FIELD_NAME;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int FIELD_SIGNATURE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int FIELD_HOLDER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int FIELD_IS_PRIVATE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int FIELD_IS_PUBLIC;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private static final int FIELD_IS_PROTECTED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5
private static final int FIELD_IS_PACKAGE_PRIVATE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 6
private static final int FIELD_IS_STATIC;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 7
private static final int FIELD_IS_FINAL;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int FIELD_IS_SYNCHRONIZED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 9
private static final int FIELD_IS_NATIVE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final int FIELD_IS_ABSTRACT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 11
private static final int FIELD_IS_STRICT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 12
private static final int FIELD_IS_SYNTHETIC;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 13
private static final int FIELD_IS_OBSOLETE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 14
private static final int FIELD_UNDEFINED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private static java.util.Map fields;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.fields:Ljava/util/Map;
1: ldc "name"
iconst_0
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
2: ldc "signature"
iconst_1
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
3: ldc "holder"
iconst_2
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
4: ldc "isPrivate"
iconst_3
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
5: ldc "isPublic"
iconst_4
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
6: ldc "isProtected"
iconst_5
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
7: ldc "isPackagePrivate"
bipush 6
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
8: ldc "isStatic"
bipush 7
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
9: ldc "isFinal"
bipush 8
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
10: ldc "isSynchronized"
bipush 9
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
11: ldc "isNative"
bipush 10
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
12: ldc "isAbstract"
bipush 11
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
13: ldc "isStrict"
bipush 12
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
14: ldc "isSynthetic"
bipush 13
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
15: ldc "isObsolete"
bipush 14
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.addField:(Ljava/lang/String;I)V
16: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(sun.jvm.hotspot.oops.Method, sun.jvm.hotspot.utilities.soql.JSJavaFactory);
descriptor: (Lsun/jvm/hotspot/oops/Method;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial sun.jvm.hotspot.utilities.soql.JSMetadata.<init>:(Lsun/jvm/hotspot/oops/Metadata;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
0 2 1 m Lsun/jvm/hotspot/oops/Method;
0 2 2 fac Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
MethodParameters:
Name Flags
m
fac
public final sun.jvm.hotspot.oops.Method getMethod();
descriptor: ()Lsun/jvm/hotspot/oops/Method;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaMethod.getMetadata:()Lsun/jvm/hotspot/oops/Metadata;
checkcast sun.jvm.hotspot.oops.Method
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
public java.lang.Object get(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.getFieldID:(Ljava/lang/String;)I
istore 2
start local 2 1: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaMethod.getMethod:()Lsun/jvm/hotspot/oops/Method;
astore 3
start local 3 2: iload 2
tableswitch { // -1 - 14
-1: 18
0: 3
1: 4
2: 5
3: 6
4: 7
5: 8
6: 9
7: 10
8: 11
9: 12
10: 13
11: 14
12: 15
13: 16
14: 17
default: 18
}
3: StackMap locals: int sun.jvm.hotspot.oops.Method
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.getSignature:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
areturn
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaMethod.getMethodHolder:()Lsun/jvm/hotspot/utilities/soql/JSJavaObject;
areturn
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isPrivate:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
7: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isPublic:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
8: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isProtected:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
9: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isPackagePrivate:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
10: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isStatic:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
11: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isFinal:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
12: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isSynchronized:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
13: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isNative:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
14: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isAbstract:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
15: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isStrict:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
16: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isSynthetic:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
17: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.jvm.hotspot.oops.Method.isObsolete:()Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
18: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSMetadata.get:(Ljava/lang/String;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
0 19 1 name Ljava/lang/String;
1 19 2 fieldID I
2 19 3 method Lsun/jvm/hotspot/oops/Method;
MethodParameters:
Name Flags
name
public java.lang.Object[] getIds();
descriptor: ()[Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: getstatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.fields:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.toArray:()[Ljava/lang/Object;
astore 1
start local 1 1: aload 0
invokespecial sun.jvm.hotspot.utilities.soql.JSMetadata.getIds:()[Ljava/lang/Object;
astore 2
start local 2 2: aload 1
arraylength
aload 2
arraylength
iadd
anewarray java.lang.Object
astore 3
start local 3 3: aload 1
iconst_0
aload 3
iconst_0
aload 1
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
4: aload 2
iconst_0
aload 3
aload 1
arraylength
aload 2
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
1 6 1 fieldNames [Ljava/lang/Object;
2 6 2 superFields [Ljava/lang/Object;
3 6 3 res [Ljava/lang/Object;
public boolean has(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.getFieldID:(Ljava/lang/String;)I
iconst_m1
if_icmpeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSMetadata.has:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
0 3 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void put(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.getFieldID:(Ljava/lang/String;)I
iconst_m1
if_icmpeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial sun.jvm.hotspot.utilities.soql.JSMetadata.put:(Ljava/lang/String;Ljava/lang/Object;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
0 4 1 name Ljava/lang/String;
0 4 2 value Ljava/lang/Object;
MethodParameters:
Name Flags
name
value
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 1
start local 1 1: aload 1
ldc "Method "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
2: aload 1
aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaMethod.getMethod:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.externalNameAndSignature:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
3: aload 1
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
1 4 1 buf Ljava/lang/StringBuffer;
private sun.jvm.hotspot.utilities.soql.JSJavaObject getMethodHolder();
descriptor: ()Lsun/jvm/hotspot/utilities/soql/JSJavaObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaMethod.getMethod:()Lsun/jvm/hotspot/oops/Method;
invokevirtual sun.jvm.hotspot.oops.Method.getMethodHolder:()Lsun/jvm/hotspot/oops/InstanceKlass;
astore 1
start local 1 1: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaMethod.factory:Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
aload 1
invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaKlass:(Lsun/jvm/hotspot/oops/Klass;)Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaKlass.getJSJavaClass:()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaMethod;
1 2 1 k Lsun/jvm/hotspot/oops/Klass;
private static void addField(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.fields:Ljava/util/Map;
aload 0
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 name Ljava/lang/String;
0 2 1 fieldId I
MethodParameters:
Name Flags
name
fieldId
private static int getFieldID(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic sun.jvm.hotspot.utilities.soql.JSJavaMethod.fields:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
invokevirtual java.lang.Integer.intValue:()I
goto 3
StackMap locals: java.lang.Integer
StackMap stack:
2: iconst_m1
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 name Ljava/lang/String;
1 4 1 res Ljava/lang/Integer;
MethodParameters:
Name Flags
name
}
SourceFile: "JSJavaMethod.java"