public class sun.jvm.hotspot.utilities.soql.JSJavaInstance extends sun.jvm.hotspot.utilities.soql.JSJavaObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.soql.JSJavaInstance
super_class: sun.jvm.hotspot.utilities.soql.JSJavaObject
{
protected final sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass type;
descriptor: Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
public void <init>(sun.jvm.hotspot.oops.Instance, sun.jvm.hotspot.utilities.soql.JSJavaFactory);
descriptor: (Lsun/jvm/hotspot/oops/Instance;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.JSJavaObject.<init>:(Lsun/jvm/hotspot/oops/Oop;Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;)V
1: aload 0
aload 2
aload 1
invokevirtual sun.jvm.hotspot.oops.Instance.getKlass:()Lsun/jvm/hotspot/oops/Klass;
invokeinterface sun.jvm.hotspot.utilities.soql.JSJavaFactory.newJSJavaKlass:(Lsun/jvm/hotspot/oops/Klass;)Lsun/jvm/hotspot/utilities/soql/JSJavaKlass;
checkcast sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass
putfield sun.jvm.hotspot.utilities.soql.JSJavaInstance.type:Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
0 3 1 instance Lsun/jvm/hotspot/oops/Instance;
0 3 2 fac Lsun/jvm/hotspot/utilities/soql/JSJavaFactory;
MethodParameters:
Name Flags
instance
fac
public final sun.jvm.hotspot.oops.Instance getInstance();
descriptor: ()Lsun/jvm/hotspot/oops/Instance;
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.JSJavaInstance.getOop:()Lsun/jvm/hotspot/oops/Oop;
checkcast sun.jvm.hotspot.oops.Instance
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
public final sun.jvm.hotspot.utilities.soql.JSJavaClass getJSJavaClass();
descriptor: ()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaInstance.type:Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getJSJavaClass:()Lsun/jvm/hotspot/utilities/soql/JSJavaClass;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
public java.lang.Object get(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.hasField:(Ljava/lang/String;)Z
ifeq 2
1: aload 0
aload 1
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.getFieldValue:(Ljava/lang/String;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaObject.get:(Ljava/lang/String;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
0 3 1 name Ljava/lang/String;
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: aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.getFieldNames:()[Ljava/lang/String;
astore 1
start local 1 1: aload 0
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaObject.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/JSJavaInstance;
1 6 1 fieldNames [Ljava/lang/String;
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 0
aload 1
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.hasField:(Ljava/lang/String;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaObject.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/JSJavaInstance;
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 0
aload 1
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.hasField:(Ljava/lang/String;)Z
ifne 2
1: aload 0
aload 1
aload 2
invokespecial sun.jvm.hotspot.utilities.soql.JSJavaObject.put:(Ljava/lang/String;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
0 3 1 name Ljava/lang/String;
0 3 2 value Ljava/lang/Object;
MethodParameters:
Name Flags
name
value
protected java.lang.Object getFieldValue(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaInstance.type:Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
aload 1
aload 0
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstance.getInstance:()Lsun/jvm/hotspot/oops/Instance;
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getInstanceFieldValue:(Ljava/lang/String;Lsun/jvm/hotspot/oops/Instance;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.NoSuchFieldException
pop
3: getstatic sun.jvm.hotspot.utilities.soql.JSJavaInstance.UNDEFINED:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
0 4 1 name Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchFieldException
MethodParameters:
Name Flags
name
protected java.lang.String[] getFieldNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaInstance.type:Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.getInstanceFieldNames:()[Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
protected boolean hasField(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.jvm.hotspot.utilities.soql.JSJavaInstance.type:Lsun/jvm/hotspot/utilities/soql/JSJavaInstanceKlass;
aload 1
invokevirtual sun.jvm.hotspot.utilities.soql.JSJavaInstanceKlass.hasInstanceField:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/soql/JSJavaInstance;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
}
SourceFile: "JSJavaInstance.java"