public final class com.oracle.truffle.js.scriptengine.GraalJSScriptEngine extends javax.script.AbstractScriptEngine implements javax.script.Compilable, javax.script.Invocable, java.lang.AutoCloseable
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
super_class: javax.script.AbstractScriptEngine
{
private static final java.lang.String ID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js"
private static final java.lang.String POLYGLOT_CONTEXT;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "polyglot.context"
private static final java.lang.String OUT_SYMBOL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "$$internal.out$$"
private static final java.lang.String IN_SYMBOL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "$$internal.in$$"
private static final java.lang.String ERR_SYMBOL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "$$internal.err$$"
private static final java.lang.String JS_SYNTAX_EXTENSIONS_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js.syntax-extensions"
private static final java.lang.String JS_SCRIPT_ENGINE_GLOBAL_SCOPE_IMPORT_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js.script-engine-global-scope-import"
private static final java.lang.String JS_LOAD_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js.load"
private static final java.lang.String JS_PRINT_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js.print"
private static final java.lang.String JS_GLOBAL_ARGUMENTS_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "js.global-arguments"
private static final java.lang.String NASHORN_COMPATIBILITY_MODE_SYSTEM_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "polyglot.js.nashorn-compat"
private static final java.lang.String INSECURE_SCRIPTENGINE_ACCESS_SYSTEM_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "graaljs.insecure-scriptengine-access"
static final java.lang.String MAGIC_OPTION_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "polyglot.js."
private static final org.graalvm.polyglot.HostAccess NASHORN_HOST_ACCESS;
descriptor: Lorg/graalvm/polyglot/HostAccess;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter[] MAGIC_OPTION_SETTERS;
descriptor: [Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.collections.EconomicSet<java.lang.String> MAGIC_BINDINGS_OPTION_KEYS;
descriptor: Lorg/graalvm/collections/EconomicSet;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/collections/EconomicSet<Ljava/lang/String;>;
static final org.graalvm.collections.EconomicMap<java.lang.String, com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter> MAGIC_BINDINGS_OPTION_MAP;
descriptor: Lorg/graalvm/collections/EconomicMap;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/collections/EconomicMap<Ljava/lang/String;Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;>;
private static final boolean NASHORN_COMPATIBILITY_MODE;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final com.oracle.truffle.js.scriptengine.GraalJSEngineFactory factory;
descriptor: Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.polyglot.Context$Builder contextConfig;
descriptor: Lorg/graalvm/polyglot/Context$Builder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean evalCalled;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String JRUNSCRIPT_INIT_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "<system-init>"
private static final java.lang.String JSADAPTER_POLYFILL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "this.JSAdapter || Object.defineProperty(this, \"JSAdapter\", {configurable:true, writable:true, enumerable: false, value: function(t) {\n var target = {};\n var handler = {\n get: function(target, name) {return typeof t.__get__ == 'function' ? t.__get__.call(target, name) : undefined;},\n has: function(target, name) {return typeof t.__has__ == 'function' ? t.__has__.call(target, name) : false;},\n deleteProperty: function(target, name) {return typeof t.__delete__ == 'function' ? t.__delete__.call(target, name) : true;},\n set: function(target, name, value) {return typeof t.__put__ == 'function' ? t.__put__.call(target, name, value) : undefined;},\n ownKeys: function(target) {return typeof t.__getIds__ == 'function' ? t.__getIds__.call(target) : [];},\n }\n return new Proxy(target, handler);\n}});\n"
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=0
0: invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createNashornHostAccess:()Lorg/graalvm/polyglot/HostAccess;
putstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.NASHORN_HOST_ACCESS:Lorg/graalvm/polyglot/HostAccess;
1: bipush 8
anewarray com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter
dup
iconst_0
2: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$1
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$1.<init>:()V
aastore
dup
iconst_1
3: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$2
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$2.<init>:()V
aastore
dup
iconst_2
4: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$3
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$3.<init>:()V
aastore
dup
iconst_3
5: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$4
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$4.<init>:()V
aastore
dup
iconst_4
6: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$5
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$5.<init>:()V
aastore
dup
iconst_5
7: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$6
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$6.<init>:()V
aastore
dup
bipush 6
8: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$7
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$7.<init>:()V
aastore
dup
bipush 7
9: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$8
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$8.<init>:()V
aastore
10: putstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_OPTION_SETTERS:[Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
11: invokestatic org.graalvm.collections.EconomicSet.create:()Lorg/graalvm/collections/EconomicSet;
putstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_BINDINGS_OPTION_KEYS:Lorg/graalvm/collections/EconomicSet;
12: invokestatic org.graalvm.collections.EconomicMap.create:()Lorg/graalvm/collections/EconomicMap;
putstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_BINDINGS_OPTION_MAP:Lorg/graalvm/collections/EconomicMap;
13: ldc "polyglot.js.nashorn-compat"
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
putstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.NASHORN_COMPATIBILITY_MODE:Z
14: getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_OPTION_SETTERS:[Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
dup
astore 3
arraylength
istore 2
iconst_0
istore 1
goto 19
StackMap locals: top int int com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter[]
StackMap stack:
15: aload 3
iload 1
aaload
astore 0
start local 0 16: getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_BINDINGS_OPTION_KEYS:Lorg/graalvm/collections/EconomicSet;
aload 0
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.getOptionKey:()Ljava/lang/String;
invokeinterface org.graalvm.collections.EconomicSet.add:(Ljava/lang/Object;)Z
pop
17: getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_BINDINGS_OPTION_MAP:Lorg/graalvm/collections/EconomicMap;
aload 0
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.getOptionKey:()Ljava/lang/String;
aload 0
invokeinterface org.graalvm.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 0 18: iinc 1 1
StackMap locals:
StackMap stack:
19: iload 1
iload 2
if_icmplt 15
20: return
LocalVariableTable:
Start End Slot Name Signature
16 18 0 setter Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
private static org.graalvm.polyglot.HostAccess createNashornHostAccess();
descriptor: ()Lorg/graalvm/polyglot/HostAccess;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=1, args_size=0
0: getstatic org.graalvm.polyglot.HostAccess.ALL:Lorg/graalvm/polyglot/HostAccess;
invokestatic org.graalvm.polyglot.HostAccess.newBuilder:(Lorg/graalvm/polyglot/HostAccess;)Lorg/graalvm/polyglot/HostAccess$Builder;
astore 0
start local 0 1: aload 0
ldc Lorg/graalvm/polyglot/Value;
ldc Ljava/lang/String;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$0(Lorg/graalvm/polyglot/Value;)Z (6)
(Lorg/graalvm/polyglot/Value;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/polyglot/Value.toString()Ljava/lang/String; (5)
(Lorg/graalvm/polyglot/Value;)Ljava/lang/String;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
2: aload 0
ldc Ljava/lang/Number;
ldc Ljava/lang/Integer;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$2(Ljava/lang/Number;)Z (6)
(Ljava/lang/Number;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$3(Ljava/lang/Number;)Ljava/lang/Integer; (6)
(Ljava/lang/Number;)Ljava/lang/Integer;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
3: aload 0
ldc Ljava/lang/Number;
ldc Ljava/lang/Double;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$4(Ljava/lang/Number;)Z (6)
(Ljava/lang/Number;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$5(Ljava/lang/Number;)Ljava/lang/Double; (6)
(Ljava/lang/Number;)Ljava/lang/Double;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
4: aload 0
ldc Ljava/lang/Number;
ldc Ljava/lang/Long;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$6(Ljava/lang/Number;)Z (6)
(Ljava/lang/Number;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$7(Ljava/lang/Number;)Ljava/lang/Long; (6)
(Ljava/lang/Number;)Ljava/lang/Long;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
5: aload 0
ldc Ljava/lang/Number;
ldc Ljava/lang/Boolean;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$8(Ljava/lang/Number;)Z (6)
(Ljava/lang/Number;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$9(Ljava/lang/Number;)Ljava/lang/Boolean; (6)
(Ljava/lang/Number;)Ljava/lang/Boolean;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
6: aload 0
ldc Ljava/lang/String;
ldc Ljava/lang/Boolean;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$10(Ljava/lang/String;)Z (6)
(Ljava/lang/String;)Z
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/scriptengine/GraalJSScriptEngine.lambda$11(Ljava/lang/String;)Ljava/lang/Boolean; (6)
(Ljava/lang/String;)Ljava/lang/Boolean;
getstatic org.graalvm.polyglot.HostAccess$TargetMappingPrecedence.LOWEST:Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;
invokevirtual org.graalvm.polyglot.HostAccess$Builder.targetTypeMapping:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Predicate;Ljava/util/function/Function;Lorg/graalvm/polyglot/HostAccess$TargetMappingPrecedence;)Lorg/graalvm/polyglot/HostAccess$Builder;
pop
7: aload 0
invokevirtual org.graalvm.polyglot.HostAccess$Builder.build:()Lorg/graalvm/polyglot/HostAccess;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 8 0 b Lorg/graalvm/polyglot/HostAccess$Builder;
private static boolean toBoolean(double);
descriptor: (D)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: dload 0
dconst_0
dcmpl
ifeq 1
dload 0
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 d D
MethodParameters:
Name Flags
d
private static boolean toBoolean(com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter, java.lang.Object);
descriptor: (Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Boolean
ifne 2
1: aload 0
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.getOptionKey:()Ljava/lang/String;
aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.magicOptionValueErrorBool:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;
athrow
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 optionSetter Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
0 3 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
optionSetter
value
void <init>(com.oracle.truffle.js.scriptengine.GraalJSEngineFactory);
descriptor: (Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSEngineFactory.getPolyglotEngine:()Lorg/graalvm/polyglot/Engine;
aconst_null
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.<init>:(Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;Lorg/graalvm/polyglot/Engine;Lorg/graalvm/polyglot/Context$Builder;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 2 1 factory Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
MethodParameters:
Name Flags
factory
void <init>(com.oracle.truffle.js.scriptengine.GraalJSEngineFactory, org.graalvm.polyglot.Engine, org.graalvm.polyglot.Context$Builder);
descriptor: (Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;Lorg/graalvm/polyglot/Engine;Lorg/graalvm/polyglot/Context$Builder;)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial javax.script.AbstractScriptEngine.<init>:()V
1: aload 2
astore 4
start local 4 2: aload 4
ifnonnull 4
3: invokestatic org.graalvm.polyglot.Engine.newBuilder:()Lorg/graalvm/polyglot/Engine$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Engine$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Engine$Builder;
invokevirtual org.graalvm.polyglot.Engine$Builder.build:()Lorg/graalvm/polyglot/Engine;
astore 4
4: StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine com.oracle.truffle.js.scriptengine.GraalJSEngineFactory org.graalvm.polyglot.Engine org.graalvm.polyglot.Context$Builder org.graalvm.polyglot.Engine
StackMap stack:
aload 3
astore 5
start local 5 5: aload 5
ifnonnull 16
6: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "js"
aastore
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
astore 5
7: aload 5
ldc "js.syntax-extensions"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
8: aload 5
ldc "js.load"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
9: aload 5
ldc "js.print"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
10: aload 5
ldc "js.global-arguments"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
11: getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.NASHORN_COMPATIBILITY_MODE:Z
ifeq 14
12: aload 5
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.updateForNashornCompatibilityMode:(Lorg/graalvm/polyglot/Context$Builder;)V
13: goto 16
StackMap locals: org.graalvm.polyglot.Context$Builder
StackMap stack:
14: ldc "graaljs.insecure-scriptengine-access"
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
ifeq 16
15: aload 5
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.updateForScriptEngineAccessibility:(Lorg/graalvm/polyglot/Context$Builder;)V
16: StackMap locals:
StackMap stack:
aload 0
aload 1
ifnonnull 17
new com.oracle.truffle.js.scriptengine.GraalJSEngineFactory
dup
aload 4
invokespecial com.oracle.truffle.js.scriptengine.GraalJSEngineFactory.<init>:(Lorg/graalvm/polyglot/Engine;)V
goto 18
StackMap locals:
StackMap stack: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
17: aload 1
StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine com.oracle.truffle.js.scriptengine.GraalJSEngineFactory org.graalvm.polyglot.Engine org.graalvm.polyglot.Context$Builder org.graalvm.polyglot.Engine org.graalvm.polyglot.Context$Builder
StackMap stack: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine com.oracle.truffle.js.scriptengine.GraalJSEngineFactory
18: putfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.factory:Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
19: aload 0
aload 5
ldc "js.script-engine-global-scope-import"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
aload 4
invokevirtual org.graalvm.polyglot.Context$Builder.engine:(Lorg/graalvm/polyglot/Engine;)Lorg/graalvm/polyglot/Context$Builder;
putfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.contextConfig:Lorg/graalvm/polyglot/Context$Builder;
20: aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
new com.oracle.truffle.js.scriptengine.GraalJSBindings
dup
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.contextConfig:Lorg/graalvm/polyglot/Context$Builder;
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokespecial com.oracle.truffle.js.scriptengine.GraalJSBindings.<init>:(Lorg/graalvm/polyglot/Context$Builder;Ljavax/script/ScriptContext;)V
bipush 100
invokeinterface javax.script.ScriptContext.setBindings:(Ljavax/script/Bindings;I)V
21: return
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 22 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 22 1 factory Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
0 22 2 engine Lorg/graalvm/polyglot/Engine;
0 22 3 contextConfig Lorg/graalvm/polyglot/Context$Builder;
2 22 4 engineToUse Lorg/graalvm/polyglot/Engine;
5 22 5 contextConfigToUse Lorg/graalvm/polyglot/Context$Builder;
MethodParameters:
Name Flags
factory
engine
contextConfig
private static void updateForNashornCompatibilityMode(org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Context$Builder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowAllAccess:(Z)Lorg/graalvm/polyglot/Context$Builder;
pop
1: aload 0
getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.NASHORN_HOST_ACCESS:Lorg/graalvm/polyglot/HostAccess;
invokevirtual org.graalvm.polyglot.Context$Builder.allowHostAccess:(Lorg/graalvm/polyglot/HostAccess;)Lorg/graalvm/polyglot/Context$Builder;
pop
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 builder Lorg/graalvm/polyglot/Context$Builder;
MethodParameters:
Name Flags
builder
private static void updateForScriptEngineAccessibility(org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Context$Builder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.graalvm.polyglot.HostAccess.ALL:Lorg/graalvm/polyglot/HostAccess;
invokevirtual org.graalvm.polyglot.Context$Builder.allowHostAccess:(Lorg/graalvm/polyglot/HostAccess;)Lorg/graalvm/polyglot/Context$Builder;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 builder Lorg/graalvm/polyglot/Context$Builder;
MethodParameters:
Name Flags
builder
static org.graalvm.polyglot.Context createDefaultContext(org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Context$Builder;)Lorg/graalvm/polyglot/Context;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream.<init>:()V
astore 1
start local 1 1: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream.<init>:()V
astore 2
start local 2 2: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream
dup
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream.<init>:()V
astore 3
start local 3 3: aload 0
aload 1
invokevirtual org.graalvm.polyglot.Context$Builder.in:(Ljava/io/InputStream;)Lorg/graalvm/polyglot/Context$Builder;
aload 2
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
aload 3
invokevirtual org.graalvm.polyglot.Context$Builder.err:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
pop
4: aload 0
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 4
start local 4 5: aload 4
invokevirtual org.graalvm.polyglot.Context.getPolyglotBindings:()Lorg/graalvm/polyglot/Value;
ldc "$$internal.out$$"
aload 2
invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
6: aload 4
invokevirtual org.graalvm.polyglot.Context.getPolyglotBindings:()Lorg/graalvm/polyglot/Value;
ldc "$$internal.err$$"
aload 3
invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
7: aload 4
invokevirtual org.graalvm.polyglot.Context.getPolyglotBindings:()Lorg/graalvm/polyglot/Value;
ldc "$$internal.in$$"
aload 1
invokevirtual org.graalvm.polyglot.Value.putMember:(Ljava/lang/String;Ljava/lang/Object;)V
8: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 builder Lorg/graalvm/polyglot/Context$Builder;
1 9 1 in Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$DelegatingInputStream;
2 9 2 out Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$DelegatingOutputStream;
3 9 3 err Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$DelegatingOutputStream;
5 9 4 ctx Lorg/graalvm/polyglot/Context;
MethodParameters:
Name Flags
builder
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getPolyglotContext:()Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.polyglot.Context.close:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
public org.graalvm.polyglot.Engine getPolyglotEngine();
descriptor: ()Lorg/graalvm/polyglot/Engine;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.factory:Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSEngineFactory.getPolyglotEngine:()Lorg/graalvm/polyglot/Engine;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
public org.graalvm.polyglot.Context getPolyglotContext();
descriptor: ()Lorg/graalvm/polyglot/Context;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getPolyglotContext:(Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Context;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
public org.graalvm.polyglot.Context getPolyglotContext(javax.script.ScriptContext);
descriptor: (Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Context;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getOrCreateGraalJSBindings:(Ljavax/script/ScriptContext;)Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.getContext:()Lorg/graalvm/polyglot/Context;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 1 1 ctxt Ljavax/script/ScriptContext;
MethodParameters:
Name Flags
ctxt
static org.graalvm.polyglot.Value evalInternal(org.graalvm.polyglot.Context, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ldc "js"
aload 1
ldc "internal-script"
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Source$Builder.internal:(Z)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.buildLiteral:()Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lorg/graalvm/polyglot/Context;
0 1 1 script Ljava/lang/String;
MethodParameters:
Name Flags
context
script
public javax.script.Bindings createBindings();
descriptor: ()Ljavax/script/Bindings;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.js.scriptengine.GraalJSBindings
dup
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.contextConfig:Lorg/graalvm/polyglot/Context$Builder;
aconst_null
invokespecial com.oracle.truffle.js.scriptengine.GraalJSBindings.<init>:(Lorg/graalvm/polyglot/Context$Builder;Ljavax/script/ScriptContext;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
public void setBindings(javax.script.Bindings, int);
descriptor: (Ljavax/script/Bindings;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
bipush 100
if_icmpne 4
1: aload 0
iload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getBindings:(I)Ljavax/script/Bindings;
astore 3
start local 3 2: aload 3
instanceof com.oracle.truffle.js.scriptengine.GraalJSBindings
ifeq 4
3: aload 3
checkcast com.oracle.truffle.js.scriptengine.GraalJSBindings
aconst_null
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.updateEngineScriptContext:(Ljavax/script/ScriptContext;)V
end local 3 4: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
invokespecial javax.script.AbstractScriptEngine.setBindings:(Ljavax/script/Bindings;I)V
5: iload 2
bipush 100
if_icmpne 7
aload 1
instanceof com.oracle.truffle.js.scriptengine.GraalJSBindings
ifeq 7
6: aload 1
checkcast com.oracle.truffle.js.scriptengine.GraalJSBindings
aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getContext:()Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.updateEngineScriptContext:(Ljavax/script/ScriptContext;)V
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 8 1 bindings Ljavax/script/Bindings;
0 8 2 scope I
2 4 3 oldBindings Ljavax/script/Bindings;
MethodParameters:
Name Flags
bindings
scope
public java.lang.Object eval(java.io.Reader, javax.script.ScriptContext);
descriptor: (Ljava/io/Reader;Ljavax/script/ScriptContext;)Ljava/lang/Object;
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
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.read:(Ljava/io/Reader;)Ljava/lang/String;
aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createSource:(Ljava/lang/String;Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Source;
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval:(Lorg/graalvm/polyglot/Source;Ljavax/script/ScriptContext;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 1 1 reader Ljava/io/Reader;
0 1 2 ctxt Ljavax/script/ScriptContext;
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
reader
ctxt
static java.lang.String read(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: sipush 1024
newarray 5
astore 2
start local 2 2: StackMap locals: java.lang.StringBuilder char[]
StackMap stack:
aload 0
aload 2
invokevirtual java.io.Reader.read:([C)I
istore 3
start local 3 3: iload 3
iconst_m1
if_icmpne 5
4: goto 10
5: StackMap locals: int
StackMap stack:
aload 1
aload 2
iconst_0
iload 3
invokevirtual java.lang.StringBuilder.append:([CII)Ljava/lang/StringBuilder;
pop
end local 3 6: goto 2
7: StackMap locals: java.io.Reader java.lang.StringBuilder char[]
StackMap stack: java.lang.Throwable
astore 4
8: aload 0
invokevirtual java.io.Reader.close:()V
9: aload 4
athrow
10: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.io.Reader.close:()V
11: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
12: areturn
13: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 14: new javax.script.ScriptException
dup
aload 3
invokespecial javax.script.ScriptException.<init>:(Ljava/lang/Exception;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 reader Ljava/io/Reader;
1 15 1 builder Ljava/lang/StringBuilder;
2 15 2 buffer [C
3 6 3 count I
14 15 3 ioex Ljava/io/IOException;
Exception table:
from to target type
2 7 7 any
2 12 13 Class java.io.IOException
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
reader
public java.lang.Object eval(java.lang.String, javax.script.ScriptContext);
descriptor: (Ljava/lang/String;Ljavax/script/ScriptContext;)Ljava/lang/Object;
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
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createSource:(Ljava/lang/String;Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Source;
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.eval:(Lorg/graalvm/polyglot/Source;Ljavax/script/ScriptContext;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 1 1 script Ljava/lang/String;
0 1 2 ctxt Ljavax/script/ScriptContext;
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
script
ctxt
private static org.graalvm.polyglot.Source createSource(java.lang.String, javax.script.ScriptContext);
descriptor: (Ljava/lang/String;Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Source;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "javax.script.filename"
invokeinterface javax.script.ScriptContext.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: ldc "js"
aload 0
ldc "<eval>"
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.buildLiteral:()Lorg/graalvm/polyglot/Source;
areturn
3: StackMap locals: java.lang.Object
StackMap stack:
ldc "js"
new java.io.File
dup
aload 2
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/io/File;)Lorg/graalvm/polyglot/Source$Builder;
aload 0
invokevirtual org.graalvm.polyglot.Source$Builder.content:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
4: areturn
5: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 6: new javax.script.ScriptException
dup
aload 3
invokespecial javax.script.ScriptException.<init>:(Ljava/lang/Exception;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 script Ljava/lang/String;
0 7 1 ctxt Ljavax/script/ScriptContext;
1 7 2 val Ljava/lang/Object;
6 7 3 ioex Ljava/io/IOException;
Exception table:
from to target type
3 4 5 Class java.io.IOException
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
script
ctxt
private static void updateDelegatingIOStreams(org.graalvm.polyglot.Context, javax.script.ScriptContext);
descriptor: (Lorg/graalvm/polyglot/Context;Ljavax/script/ScriptContext;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.polyglot.Context.getPolyglotBindings:()Lorg/graalvm/polyglot/Value;
astore 2
start local 2 1: aload 2
ldc "$$internal.out$$"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asProxyObject:()Lorg/graalvm/polyglot/proxy/Proxy;
checkcast com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream
aload 1
invokeinterface javax.script.ScriptContext.getWriter:()Ljava/io/Writer;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream.setWriter:(Ljava/io/Writer;)V
2: aload 2
ldc "$$internal.err$$"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asProxyObject:()Lorg/graalvm/polyglot/proxy/Proxy;
checkcast com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream
aload 1
invokeinterface javax.script.ScriptContext.getErrorWriter:()Ljava/io/Writer;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream.setWriter:(Ljava/io/Writer;)V
3: aload 2
ldc "$$internal.in$$"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asProxyObject:()Lorg/graalvm/polyglot/proxy/Proxy;
checkcast com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream
aload 1
invokeinterface javax.script.ScriptContext.getReader:()Ljava/io/Reader;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream.setReader:(Ljava/io/Reader;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 polyglotContext Lorg/graalvm/polyglot/Context;
0 5 1 scriptContext Ljavax/script/ScriptContext;
1 5 2 polyglotBindings Lorg/graalvm/polyglot/Value;
MethodParameters:
Name Flags
polyglotContext
scriptContext
private java.lang.Object eval(org.graalvm.polyglot.Source, javax.script.ScriptContext);
descriptor: (Lorg/graalvm/polyglot/Source;Ljavax/script/ScriptContext;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getOrCreateGraalJSBindings:(Ljavax/script/ScriptContext;)Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
astore 3
start local 3 1: aload 3
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.getContext:()Lorg/graalvm/polyglot/Context;
astore 4
start local 4 2: aload 4
aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.updateDelegatingIOStreams:(Lorg/graalvm/polyglot/Context;Ljavax/script/ScriptContext;)V
3: aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.evalCalled:Z
ifne 5
4: aload 1
aload 4
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.jrunscriptInitWorkaround:(Lorg/graalvm/polyglot/Source;Lorg/graalvm/polyglot/Context;)V
5: StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSBindings org.graalvm.polyglot.Context
StackMap stack:
aload 3
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.importGlobalBindings:(Ljavax/script/ScriptContext;)V
6: aload 4
aload 1
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
ldc Ljava/lang/Object;
invokevirtual org.graalvm.polyglot.Value.as:(Ljava/lang/Class;)Ljava/lang/Object;
astore 7
7: aload 0
iconst_1
putfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.evalCalled:Z
8: aload 7
areturn
9: StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
astore 5
start local 5 10: aload 5
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException:(Lorg/graalvm/polyglot/PolyglotException;)Ljavax/script/ScriptException;
athrow
end local 5 11: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
12: aload 0
iconst_1
putfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.evalCalled:Z
13: aload 6
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 14 1 source Lorg/graalvm/polyglot/Source;
0 14 2 scriptContext Ljavax/script/ScriptContext;
1 14 3 engineBindings Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
2 14 4 polyglotContext Lorg/graalvm/polyglot/Context;
10 11 5 e Lorg/graalvm/polyglot/PolyglotException;
Exception table:
from to target type
3 7 9 Class org.graalvm.polyglot.PolyglotException
3 7 11 any
9 11 11 any
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
source
scriptContext
private static javax.script.ScriptException toScriptException(org.graalvm.polyglot.PolyglotException);
descriptor: (Lorg/graalvm/polyglot/PolyglotException;)Ljavax/script/ScriptException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.polyglot.PolyglotException.isHostException:()Z
ifeq 9
1: aload 0
invokevirtual org.graalvm.polyglot.PolyglotException.asHostException:()Ljava/lang/Throwable;
astore 2
start local 2 2: aload 2
instanceof java.lang.Exception
ifeq 5
3: aload 2
checkcast java.lang.Exception
astore 3
start local 3 4: goto 6
end local 3 5: StackMap locals: org.graalvm.polyglot.PolyglotException top java.lang.Throwable
StackMap stack:
new java.lang.Exception
dup
aload 2
invokespecial java.lang.Exception.<init>:(Ljava/lang/Throwable;)V
astore 3
start local 3 6: StackMap locals: java.lang.Exception
StackMap stack:
new javax.script.ScriptException
dup
aload 3
invokespecial javax.script.ScriptException.<init>:(Ljava/lang/Exception;)V
astore 1
start local 1 7: aload 1
aload 0
invokevirtual org.graalvm.polyglot.PolyglotException.getStackTrace:()[Ljava/lang/StackTraceElement;
invokevirtual javax.script.ScriptException.setStackTrace:([Ljava/lang/StackTraceElement;)V
end local 3 end local 2 8: goto 10
end local 1 9: StackMap locals: org.graalvm.polyglot.PolyglotException
StackMap stack:
new javax.script.ScriptException
dup
aload 0
invokespecial javax.script.ScriptException.<init>:(Ljava/lang/Exception;)V
astore 1
start local 1 10: StackMap locals: javax.script.ScriptException
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 ex Lorg/graalvm/polyglot/PolyglotException;
7 9 1 sex Ljavax/script/ScriptException;
10 11 1 sex Ljavax/script/ScriptException;
2 8 2 hostException Ljava/lang/Throwable;
4 5 3 cause Ljava/lang/Exception;
6 8 3 cause Ljava/lang/Exception;
MethodParameters:
Name Flags
ex
private com.oracle.truffle.js.scriptengine.GraalJSBindings getOrCreateGraalJSBindings(javax.script.ScriptContext);
descriptor: (Ljavax/script/ScriptContext;)Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
bipush 100
invokeinterface javax.script.ScriptContext.getBindings:(I)Ljavax/script/Bindings;
astore 2
start local 2 1: aload 2
instanceof com.oracle.truffle.js.scriptengine.GraalJSBindings
ifeq 3
2: aload 2
checkcast com.oracle.truffle.js.scriptengine.GraalJSBindings
areturn
3: StackMap locals: javax.script.Bindings
StackMap stack:
new com.oracle.truffle.js.scriptengine.GraalJSBindings
dup
aload 0
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createContext:(Ljavax/script/Bindings;)Lorg/graalvm/polyglot/Context;
aload 1
invokespecial com.oracle.truffle.js.scriptengine.GraalJSBindings.<init>:(Lorg/graalvm/polyglot/Context;Ljavax/script/ScriptContext;)V
astore 3
start local 3 4: aload 3
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.putAll:(Ljava/util/Map;)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 Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 6 1 scriptContext Ljavax/script/ScriptContext;
1 6 2 engineB Ljavax/script/Bindings;
4 6 3 bindings Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
MethodParameters:
Name Flags
scriptContext
private org.graalvm.polyglot.Context createContext(javax.script.Bindings);
descriptor: (Ljavax/script/Bindings;)Lorg/graalvm/polyglot/Context;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=9, args_size=2
start local 0 start local 1 0: aload 1
ldc "polyglot.context"
invokeinterface javax.script.Bindings.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
instanceof org.graalvm.polyglot.Context
ifne 13
2: aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.contextConfig:Lorg/graalvm/polyglot/Context$Builder;
astore 3
start local 3 3: getstatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.MAGIC_OPTION_SETTERS:[Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 10
StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine javax.script.Bindings java.lang.Object org.graalvm.polyglot.Context$Builder top int int com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter[]
StackMap stack:
4: aload 7
iload 5
aaload
astore 4
start local 4 5: aload 1
aload 4
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.getOptionKey:()Ljava/lang/String;
invokeinterface javax.script.Bindings.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 8
start local 8 6: aload 8
ifnull 9
7: aload 4
aload 3
aload 8
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.setOption:(Lorg/graalvm/polyglot/Context$Builder;Ljava/lang/Object;)Lorg/graalvm/polyglot/Context$Builder;
astore 3
8: aload 1
aload 4
invokeinterface com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter.getOptionKey:()Ljava/lang/String;
invokeinterface javax.script.Bindings.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 4 9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
iload 6
if_icmplt 4
11: aload 3
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createDefaultContext:(Lorg/graalvm/polyglot/Context$Builder;)Lorg/graalvm/polyglot/Context;
astore 2
12: aload 1
ldc "polyglot.context"
aload 2
invokeinterface javax.script.Bindings.put:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 13: StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSScriptEngine javax.script.Bindings java.lang.Object
StackMap stack:
aload 2
checkcast org.graalvm.polyglot.Context
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 14 1 engineB Ljavax/script/Bindings;
1 14 2 ctx Ljava/lang/Object;
3 13 3 builder Lorg/graalvm/polyglot/Context$Builder;
5 9 4 optionSetter Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine$MagicBindingsOptionSetter;
6 9 8 value Ljava/lang/Object;
MethodParameters:
Name Flags
engineB
public com.oracle.truffle.js.scriptengine.GraalJSEngineFactory getFactory();
descriptor: ()Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.factory:Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
public java.lang.Object invokeMethod(java.lang.Object, java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "thiz is not a valid object."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getOrCreateGraalJSBindings:(Ljavax/script/ScriptContext;)Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
astore 4
start local 4 3: aload 4
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.importGlobalBindings:(Ljavax/script/ScriptContext;)V
4: aload 4
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.getContext:()Lorg/graalvm/polyglot/Context;
aload 1
invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 5: aload 5
aload 2
invokevirtual org.graalvm.polyglot.Value.canInvokeMember:(Ljava/lang/String;)Z
ifne 9
6: aload 5
aload 2
invokevirtual org.graalvm.polyglot.Value.hasMember:(Ljava/lang/String;)Z
ifne 8
7: aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.noSuchMethod:(Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
athrow
8: StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSBindings org.graalvm.polyglot.Value
StackMap stack:
aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.notCallable:(Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
athrow
9: StackMap locals:
StackMap stack:
aload 5
aload 2
aload 3
invokevirtual org.graalvm.polyglot.Value.invokeMember:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
ldc Ljava/lang/Object;
invokevirtual org.graalvm.polyglot.Value.as:(Ljava/lang/Class;)Ljava/lang/Object;
10: areturn
11: StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
astore 6
start local 6 12: aload 6
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException:(Lorg/graalvm/polyglot/PolyglotException;)Ljavax/script/ScriptException;
athrow
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 13 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 13 1 thiz Ljava/lang/Object;
0 13 2 name Ljava/lang/String;
0 13 3 args [Ljava/lang/Object;
3 13 4 engineBindings Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
5 13 5 thisValue Lorg/graalvm/polyglot/Value;
12 13 6 e Lorg/graalvm/polyglot/PolyglotException;
Exception table:
from to target type
9 10 11 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws javax.script.ScriptException, java.lang.NoSuchMethodException
MethodParameters:
Name Flags
thiz
name
args
public java.lang.Object invokeFunction(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getOrCreateGraalJSBindings:(Ljavax/script/ScriptContext;)Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
astore 3
start local 3 1: aload 3
aload 0
getfield com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.context:Ljavax/script/ScriptContext;
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.importGlobalBindings:(Ljavax/script/ScriptContext;)V
2: aload 3
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSBindings.getContext:()Lorg/graalvm/polyglot/Context;
ldc "js"
invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
aload 1
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 3: aload 4
ifnonnull 5
4: aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.noSuchMethod:(Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
athrow
5: StackMap locals: com.oracle.truffle.js.scriptengine.GraalJSBindings org.graalvm.polyglot.Value
StackMap stack:
aload 4
invokevirtual org.graalvm.polyglot.Value.canExecute:()Z
ifne 7
6: aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.notCallable:(Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
athrow
7: StackMap locals:
StackMap stack:
aload 4
aload 2
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
ldc Ljava/lang/Object;
invokevirtual org.graalvm.polyglot.Value.as:(Ljava/lang/Class;)Ljava/lang/Object;
8: areturn
9: StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
astore 5
start local 5 10: aload 5
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException:(Lorg/graalvm/polyglot/PolyglotException;)Ljavax/script/ScriptException;
athrow
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 11 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 11 1 name Ljava/lang/String;
0 11 2 args [Ljava/lang/Object;
1 11 3 engineBindings Lcom/oracle/truffle/js/scriptengine/GraalJSBindings;
3 11 4 function Lorg/graalvm/polyglot/Value;
10 11 5 e Lorg/graalvm/polyglot/PolyglotException;
Exception table:
from to target type
7 8 9 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws javax.script.ScriptException, java.lang.NoSuchMethodException
MethodParameters:
Name Flags
name
args
private static java.lang.NoSuchMethodException noSuchMethod(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.NoSuchMethodException
dup
aload 0
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
Exceptions:
throws java.lang.NoSuchMethodException
MethodParameters:
Name Flags
name
private static java.lang.NoSuchMethodException notCallable(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/NoSuchMethodException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new java.lang.NoSuchMethodException
dup
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " is not a function"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
Exceptions:
throws java.lang.NoSuchMethodException
MethodParameters:
Name Flags
name
public <T> T getInterface(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.checkInterface:(Ljava/lang/Class;)V
1: aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getPolyglotContext:()Lorg/graalvm/polyglot/Context;
ldc "this"
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getInterfaceInner:(Lorg/graalvm/polyglot/Value;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 2 1 clasz Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
clasz
public <T> T getInterface(, java.lang.Class<T>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "this cannot be null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.checkInterface:(Ljava/lang/Class;)V
3: aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getPolyglotContext:()Lorg/graalvm/polyglot/Context;
aload 1
invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 4: aload 3
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.checkThis:(Lorg/graalvm/polyglot/Value;)V
5: aload 3
aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getInterfaceInner:(Lorg/graalvm/polyglot/Value;Ljava/lang/Class;)Ljava/lang/Object;
areturn
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/scriptengine/GraalJSScriptEngine;
0 6 1 thiz Ljava/lang/Object;
0 6 2 clasz Ljava/lang/Class<TT;>;
4 6 3 thisValue Lorg/graalvm/polyglot/Value;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
thiz
clasz
private static void checkInterface(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.Class.isInterface:()Z
ifne 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "interface Class expected in getInterface"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 clasz Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
clasz
private static void checkThis(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.polyglot.Value.isHostObject:()Z
ifne 1
aload 0
invokevirtual org.graalvm.polyglot.Value.hasMembers:()Z
ifne 2
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "getInterface cannot be called on non-script object"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 thiz Lorg/graalvm/polyglot/Value;
MethodParameters:
Name Flags
thiz
private static <T> T getInterfaceInner(org.graalvm.polyglot.Value, java.lang.Class<T>);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.isInterfaceImplemented:(Ljava/lang/Class;Lorg/graalvm/polyglot/Value;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.polyglot.Value.as:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 thiz Lorg/graalvm/polyglot/Value;
0 3 1 iface Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Lorg/graalvm/polyglot/Value;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
thiz
iface
public javax.script.CompiledScript compile(java.lang.String);
descriptor: (Ljava/lang/String;)Ljavax/script/CompiledScript;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getContext:()Ljavax/script/ScriptContext;
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createSource:(Ljava/lang/String;Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Source;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.compile:(Lorg/graalvm/polyglot/Source;)Ljavax/script/CompiledScript;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 2 1 script Ljava/lang/String;
1 2 2 source Lorg/graalvm/polyglot/Source;
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
script
public javax.script.CompiledScript compile(java.io.Reader);
descriptor: (Ljava/io/Reader;)Ljavax/script/CompiledScript;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.read:(Ljava/io/Reader;)Ljava/lang/String;
aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getContext:()Ljavax/script/ScriptContext;
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.createSource:(Ljava/lang/String;Ljavax/script/ScriptContext;)Lorg/graalvm/polyglot/Source;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.compile:(Lorg/graalvm/polyglot/Source;)Ljavax/script/CompiledScript;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 2 1 reader Ljava/io/Reader;
1 2 2 source Lorg/graalvm/polyglot/Source;
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
reader
private javax.script.CompiledScript compile(org.graalvm.polyglot.Source);
descriptor: (Lorg/graalvm/polyglot/Source;)Ljavax/script/CompiledScript;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.checkSyntax:(Lorg/graalvm/polyglot/Source;)V
1: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$9
dup
aload 0
aload 1
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$9.<init>:(Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;Lorg/graalvm/polyglot/Source;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 2 1 source Lorg/graalvm/polyglot/Source;
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
source
private void checkSyntax(org.graalvm.polyglot.Source);
descriptor: (Lorg/graalvm/polyglot/Source;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getPolyglotContext:()Lorg/graalvm/polyglot/Context;
aload 1
invokevirtual org.graalvm.polyglot.Context.parse:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
1: goto 4
StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
2: astore 2
start local 2 3: aload 2
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toScriptException:(Lorg/graalvm/polyglot/PolyglotException;)Ljavax/script/ScriptException;
athrow
end local 2 4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
0 5 1 source Lorg/graalvm/polyglot/Source;
3 4 2 pex Lorg/graalvm/polyglot/PolyglotException;
Exception table:
from to target type
0 1 2 Class org.graalvm.polyglot.PolyglotException
Exceptions:
throws javax.script.ScriptException
MethodParameters:
Name Flags
source
public static com.oracle.truffle.js.scriptengine.GraalJSScriptEngine create();
descriptor: ()Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: aconst_null
aconst_null
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.create:(Lorg/graalvm/polyglot/Engine;Lorg/graalvm/polyglot/Context$Builder;)Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.oracle.truffle.js.scriptengine.GraalJSScriptEngine create(org.graalvm.polyglot.Engine, org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Engine;Lorg/graalvm/polyglot/Context$Builder;)Lcom/oracle/truffle/js/scriptengine/GraalJSScriptEngine;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
dup
aconst_null
aload 0
aload 1
invokespecial com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.<init>:(Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;Lorg/graalvm/polyglot/Engine;Lorg/graalvm/polyglot/Context$Builder;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 engine Lorg/graalvm/polyglot/Engine;
0 1 1 newContextConfig Lorg/graalvm/polyglot/Context$Builder;
MethodParameters:
Name Flags
engine
newContextConfig
private static boolean isInterfaceImplemented(java.lang.Class<?>, org.graalvm.polyglot.Value);
descriptor: (Ljava/lang/Class;Lorg/graalvm/polyglot/Value;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 9
StackMap locals: java.lang.Class org.graalvm.polyglot.Value top int int java.lang.reflect.Method[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 2
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
ldc Ljava/lang/Object;
if_acmpne 4
3: goto 8
4: StackMap locals: java.lang.Class org.graalvm.polyglot.Value java.lang.reflect.Method int int java.lang.reflect.Method[]
StackMap stack:
aload 2
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isAbstract:(I)Z
ifne 6
5: goto 8
6: StackMap locals:
StackMap stack:
aload 1
aload 2
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Value.canInvokeMember:(Ljava/lang/String;)Z
ifne 8
7: iconst_0
ireturn
end local 2 8: StackMap locals: java.lang.Class org.graalvm.polyglot.Value top int int java.lang.reflect.Method[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 4
if_icmplt 1
10: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 iface Ljava/lang/Class<*>;
0 11 1 obj Lorg/graalvm/polyglot/Value;
2 8 2 method Ljava/lang/reflect/Method;
Signature: (Ljava/lang/Class<*>;Lorg/graalvm/polyglot/Value;)Z
MethodParameters:
Name Flags
iface final
obj final
private static void jrunscriptInitWorkaround(org.graalvm.polyglot.Source, org.graalvm.polyglot.Context);
descriptor: (Lorg/graalvm/polyglot/Source;Lorg/graalvm/polyglot/Context;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.polyglot.Source.getName:()Ljava/lang/String;
ldc "<system-init>"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
1: aload 0
invokevirtual org.graalvm.polyglot.Source.getCharacters:()Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
astore 2
start local 2 2: aload 2
ldc "jrunscript"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 4
aload 2
ldc "JSAdapter"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 4
aload 1
ldc "js"
invokevirtual org.graalvm.polyglot.Context.getBindings:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
ldc "JSAdapter"
invokevirtual org.graalvm.polyglot.Value.hasMember:(Ljava/lang/String;)Z
ifne 4
3: aload 1
ldc "js"
ldc "this.JSAdapter || Object.defineProperty(this, \"JSAdapter\", {configurable:true, writable:true, enumerable: false, value: function(t) {\n var target = {};\n var handler = {\n get: function(target, name) {return typeof t.__get__ == 'function' ? t.__get__.call(target, name) : undefined;},\n has: function(target, name) {return typeof t.__has__ == 'function' ? t.__has__.call(target, name) : false;},\n deleteProperty: function(target, name) {return typeof t.__delete__ == 'function' ? t.__delete__.call(target, name) : true;},\n set: function(target, name, value) {return typeof t.__put__ == 'function' ? t.__put__.call(target, name, value) : undefined;},\n ownKeys: function(target) {return typeof t.__getIds__ == 'function' ? t.__getIds__.call(target) : [];},\n }\n return new Proxy(target, handler);\n}});\n"
invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
pop
end local 2 4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 source Lorg/graalvm/polyglot/Source;
0 5 1 polyglotContext Lorg/graalvm/polyglot/Context;
2 4 2 initCode Ljava/lang/String;
MethodParameters:
Name Flags
source
polyglotContext
private static java.lang.IllegalArgumentException magicOptionValueErrorBool(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/IllegalArgumentException;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.IllegalArgumentException
dup
ldc "failed to set graal-js option \"%s\": expected a boolean value, got \"%s\""
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 1
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 v Ljava/lang/Object;
MethodParameters:
Name Flags
name
v
public javax.script.ScriptEngineFactory getFactory();
descriptor: ()Ljavax/script/ScriptEngineFactory;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.getFactory:()Lcom/oracle/truffle/js/scriptengine/GraalJSEngineFactory;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static boolean lambda$0(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.polyglot.Value.isNull:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 v Lorg/graalvm/polyglot/Value;
private static boolean lambda$2(java.lang.Number);
descriptor: (Ljava/lang/Number;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static java.lang.Integer lambda$3(java.lang.Number);
descriptor: (Ljava/lang/Number;)Ljava/lang/Integer;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Number.intValue:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static boolean lambda$4(java.lang.Number);
descriptor: (Ljava/lang/Number;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static java.lang.Double lambda$5(java.lang.Number);
descriptor: (Ljava/lang/Number;)Ljava/lang/Double;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Number.doubleValue:()D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static boolean lambda$6(java.lang.Number);
descriptor: (Ljava/lang/Number;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static java.lang.Long lambda$7(java.lang.Number);
descriptor: (Ljava/lang/Number;)Ljava/lang/Long;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Number.longValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static boolean lambda$8(java.lang.Number);
descriptor: (Ljava/lang/Number;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static java.lang.Boolean lambda$9(java.lang.Number);
descriptor: (Ljava/lang/Number;)Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Number.doubleValue:()D
invokestatic com.oracle.truffle.js.scriptengine.GraalJSScriptEngine.toBoolean:(D)Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/Number;
private static boolean lambda$10(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 n Ljava/lang/String;
private static java.lang.Boolean lambda$11(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 n Ljava/lang/String;
}
SourceFile: "GraalJSScriptEngine.java"
NestMembers:
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$1 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$2 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$3 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$4 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$5 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$6 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$7 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$8 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$9 com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter
InnerClasses:
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$1
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$2
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$3
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$4
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$5
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$6
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$7
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$8
com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$9
private DelegatingInputStream = com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingInputStream of com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
private DelegatingOutputStream = com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$DelegatingOutputStream of com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
abstract MagicBindingsOptionSetter = com.oracle.truffle.js.scriptengine.GraalJSScriptEngine$MagicBindingsOptionSetter of com.oracle.truffle.js.scriptengine.GraalJSScriptEngine
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
public final Builder = org.graalvm.polyglot.Engine$Builder of org.graalvm.polyglot.Engine
public final Builder = org.graalvm.polyglot.HostAccess$Builder of org.graalvm.polyglot.HostAccess
public final TargetMappingPrecedence = org.graalvm.polyglot.HostAccess$TargetMappingPrecedence of org.graalvm.polyglot.HostAccess
public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source