class com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty implements com.oracle.truffle.js.runtime.objects.PropertyProxy
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty
super_class: java.lang.Object
{
private final java.lang.Object source;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String key;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.lang.Object, java.lang.String);
descriptor: (Ljava/lang/Object;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
2: aload 0
aload 2
putfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.key:Ljava/lang/String;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/js/builtins/ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty;
0 4 1 source Ljava/lang/Object;
0 4 2 key Ljava/lang/String;
MethodParameters:
Name Flags
source
key
public java.lang.Object get(com.oracle.truffle.api.object.DynamicObject);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:(Ljava/lang/Object;)Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
astore 2
start local 2 1: aload 2
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.key:Ljava/lang/String;
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberReadable:(Ljava/lang/Object;Ljava/lang/String;)Z
ifeq 5
2: aload 2
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.key:Ljava/lang/String;
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
invokestatic com.oracle.truffle.js.runtime.JSRuntime.importValue:(Ljava/lang/Object;)Ljava/lang/Object;
3: areturn
4: StackMap locals: com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty com.oracle.truffle.api.object.DynamicObject com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: com.oracle.truffle.api.interop.InteropException
pop
5: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.js.runtime.objects.Undefined.instance:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/js/builtins/ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty;
0 6 1 store Lcom/oracle/truffle/api/object/DynamicObject;
1 6 2 library Lcom/oracle/truffle/api/interop/InteropLibrary;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
2 3 4 Class com.oracle.truffle.api.interop.UnknownIdentifierException
MethodParameters:
Name Flags
store
public boolean set(com.oracle.truffle.api.object.DynamicObject, java.lang.Object);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:(Ljava/lang/Object;)Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
astore 3
start local 3 1: aload 3
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.key:Ljava/lang/String;
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberWritable:(Ljava/lang/Object;Ljava/lang/String;)Z
ifeq 5
2: aload 3
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.source:Ljava/lang/Object;
aload 0
getfield com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty.key:Ljava/lang/String;
aload 2
invokestatic com.oracle.truffle.js.runtime.JSRuntime.exportValue:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.writeMember:(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
3: iconst_1
ireturn
4: StackMap locals: com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty com.oracle.truffle.api.object.DynamicObject java.lang.Object com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: com.oracle.truffle.api.interop.InteropException
pop
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/truffle/js/builtins/ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty;
0 6 1 store Lcom/oracle/truffle/api/object/DynamicObject;
0 6 2 value Ljava/lang/Object;
1 6 3 library Lcom/oracle/truffle/api/interop/InteropLibrary;
Exception table:
from to target type
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedMessageException
2 3 4 Class com.oracle.truffle.api.interop.UnknownIdentifierException
2 3 4 Class com.oracle.truffle.api.interop.UnsupportedTypeException
MethodParameters:
Name Flags
store
value
}
SourceFile: "ObjectFunctionBuiltins.java"
NestHost: com.oracle.truffle.js.builtins.ObjectFunctionBuiltins
InnerClasses:
public abstract ObjectBindPropertiesNode = com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode of com.oracle.truffle.js.builtins.ObjectFunctionBuiltins
ForeignBoundProperty = com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode$ForeignBoundProperty of com.oracle.truffle.js.builtins.ObjectFunctionBuiltins$ObjectBindPropertiesNode