public class com.oracle.graal.python.shell.GraalPythonMain extends org.graalvm.launcher.AbstractLanguageLauncher
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.graal.python.shell.GraalPythonMain
super_class: org.graalvm.launcher.AbstractLanguageLauncher
{
private static final java.lang.String LANGUAGE_ID;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "python"
private static final java.lang.String MIME_TYPE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "text/x-python"
protected static final java.lang.String BASH_LAUNCHER_EXEC_NAME;
descriptor: Ljava/lang/String;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
private static long startupWallClockTime;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static long startupNanoTime;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private java.util.ArrayList<java.lang.String> programArgs;
descriptor: Ljava/util/ArrayList;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/ArrayList<Ljava/lang/String;>;
private java.lang.String commandString;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String inputFile;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private boolean isolateFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean ignoreEnv;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean inspectFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean verboseFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean quietFlag;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean noUserSite;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean noSite;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final boolean stdinIsInteractive;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean unbufferedIO;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean multiContext;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean snaptshotStartup;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private org.graalvm.launcher.Launcher$VersionAction versionAction;
descriptor: Lorg/graalvm/launcher/Launcher$VersionAction;
flags: (0x0002) ACC_PRIVATE
private java.util.List<java.lang.String> givenArguments;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
private java.util.List<java.lang.String> relaunchArgs;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Ljava/lang/String;>;
private boolean wantsExperimental;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.Map<java.lang.String, java.lang.String> enginePolyglotOptions;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
private boolean dontWriteBytecode;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String warnOptions;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String checkHashPycsMode;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lcom/oracle/graal/python/shell/GraalPythonMain;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.graal.python.shell.GraalPythonMain.$assertionsDisabled:Z
3: ldc "org.graalvm.launcher.executablename"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic com.oracle.graal.python.shell.GraalPythonMain.BASH_LAUNCHER_EXEC_NAME:Ljava/lang/String;
4: ldc -1
putstatic com.oracle.graal.python.shell.GraalPythonMain.startupWallClockTime:J
5: ldc -1
putstatic com.oracle.graal.python.shell.GraalPythonMain.startupNanoTime:J
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.launcher.AbstractLanguageLauncher.<init>:()V
1: aload 0
aconst_null
putfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
2: aload 0
aconst_null
putfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
3: aload 0
aconst_null
putfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
4: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.isolateFlag:Z
5: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.ignoreEnv:Z
6: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
7: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
8: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.quietFlag:Z
9: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
10: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
11: aload 0
invokestatic java.lang.System.console:()Ljava/io/Console;
ifnull 12
iconst_1
goto 13
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
12: iconst_0
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
13: putfield com.oracle.graal.python.shell.GraalPythonMain.stdinIsInteractive:Z
14: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.unbufferedIO:Z
15: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.multiContext:Z
16: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.snaptshotStartup:Z
17: aload 0
getstatic org.graalvm.launcher.Launcher$VersionAction.None:Lorg/graalvm/launcher/Launcher$VersionAction;
putfield com.oracle.graal.python.shell.GraalPythonMain.versionAction:Lorg/graalvm/launcher/Launcher$VersionAction;
18: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
19: aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.dontWriteBytecode:Z
20: aload 0
aconst_null
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
21: aload 0
ldc "default"
putfield com.oracle.graal.python.shell.GraalPythonMain.checkHashPycsMode:Ljava/lang/String;
22: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic com.oracle.graal.python.shell.GraalPythonMain.setStartupTime:()V
1: new com.oracle.graal.python.shell.GraalPythonMain
dup
invokespecial com.oracle.graal.python.shell.GraalPythonMain.<init>:()V
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.launch:([Ljava/lang/String;)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 args [Ljava/lang/String;
MethodParameters:
Name Flags
args
protected static void setStartupTime();
descriptor: ()V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic com.oracle.graal.python.shell.GraalPythonMain.startupNanoTime:J
ldc -1
lcmp
ifne 2
1: invokestatic java.lang.System.nanoTime:()J
putstatic com.oracle.graal.python.shell.GraalPythonMain.startupNanoTime:J
2: StackMap locals:
StackMap stack:
getstatic com.oracle.graal.python.shell.GraalPythonMain.startupWallClockTime:J
ldc -1
lcmp
ifne 4
3: invokestatic java.lang.System.currentTimeMillis:()J
putstatic com.oracle.graal.python.shell.GraalPythonMain.startupWallClockTime:J
4: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
protected java.util.List<java.lang.String> preprocessArguments(java.util.List<java.lang.String>, java.util.Map<java.lang.String, java.lang.String>);
descriptor: (Ljava/util/List;Ljava/util/Map;)Ljava/util/List;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=14, args_size=3
start local 0 start local 1 start local 2 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 1: invokestatic com.oracle.graal.python.shell.GraalPythonMain.getDefaultEnvironmentArgs:()Ljava/util/List;
astore 4
start local 4 2: new java.util.ArrayList
dup
aload 4
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 3: aload 5
aload 1
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
4: aload 0
new java.util.ArrayList
dup
aload 5
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
putfield com.oracle.graal.python.shell.GraalPythonMain.givenArguments:Ljava/util/List;
5: new java.util.ArrayList
dup
aload 5
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 6
start local 6 6: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 7
start local 7 7: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
8: iconst_0
istore 8
start local 8 9: goto 176
10: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.util.List java.util.Map java.util.ArrayList java.util.List java.util.ArrayList java.util.List java.util.List int
StackMap stack:
aload 6
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 9
start local 9 11: aload 9
dup
astore 10
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 30
-1827203570: 12
-1645606254: 13
-1624699955: 14
-1145135799: 15
-1144953328: 16
-1041488984: 17
-406072231: 18
-350814815: 19
1461: 20
1464: 21
1468: 22
1474: 23
1477: 24
1478: 25
1481: 26
1482: 27
1483: 28
1494: 29
1495: 30
1499: 31
1500: 32
1504: 33
1508: 34
1510: 35
1512: 36
1513: 37
45773: 38
44653473: 39
1737589560: 40
1872017006: 41
default: 144
}
StackMap locals: java.lang.String java.lang.String
StackMap stack:
12: aload 10
ldc "-multi-context"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 115
goto 144
StackMap locals:
StackMap stack:
13: aload 10
ldc "--experimental-options=true"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 132
goto 144
StackMap locals:
StackMap stack:
14: aload 10
ldc "--check-hash-based-pycs"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 136
goto 144
StackMap locals:
StackMap stack:
15: aload 10
ldc "-debug-java"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 97
goto 144
StackMap locals:
StackMap stack:
16: aload 10
ldc "-debug-perf"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 104
goto 144
StackMap locals:
StackMap stack:
17: aload 10
ldc "--show-version"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 95
goto 144
StackMap locals:
StackMap stack:
18: aload 10
ldc "--experimental-options"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 132
goto 144
StackMap locals:
StackMap stack:
19: aload 10
ldc "-snapshot-startup"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 139
goto 144
StackMap locals:
StackMap stack:
20: aload 10
ldc "-B"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 42
goto 144
StackMap locals:
StackMap stack:
21: aload 10
ldc "-E"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 52
goto 144
StackMap locals:
StackMap stack:
22: aload 10
ldc "-I"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 67
goto 144
StackMap locals:
StackMap stack:
23: aload 10
ldc "-O"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 170
goto 144
StackMap locals:
StackMap stack:
24: aload 10
ldc "-R"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 170
goto 144
StackMap locals:
StackMap stack:
25: aload 10
ldc "-S"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 73
goto 144
StackMap locals:
StackMap stack:
26: aload 10
ldc "-V"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 93
goto 144
StackMap locals:
StackMap stack:
27: aload 10
ldc "-W"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 75
goto 144
StackMap locals:
StackMap stack:
28: aload 10
ldc "-X"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 86
goto 144
StackMap locals:
StackMap stack:
29: aload 10
ldc "-c"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 44
goto 144
StackMap locals:
StackMap stack:
30: aload 10
ldc "-d"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 170
goto 144
StackMap locals:
StackMap stack:
31: aload 10
ldc "-h"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 54
goto 144
StackMap locals:
StackMap stack:
32: aload 10
ldc "-i"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 56
goto 144
StackMap locals:
StackMap stack:
33: aload 10
ldc "-m"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 58
goto 144
StackMap locals:
StackMap stack:
34: aload 10
ldc "-q"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 65
goto 144
StackMap locals:
StackMap stack:
35: aload 10
ldc "-s"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 71
goto 144
StackMap locals:
StackMap stack:
36: aload 10
ldc "-u"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 130
goto 144
StackMap locals:
StackMap stack:
37: aload 10
ldc "-v"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 91
goto 144
StackMap locals:
StackMap stack:
38: aload 10
ldc "-OO"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 170
goto 144
StackMap locals:
StackMap stack:
39: aload 10
ldc "-dump"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 120
goto 144
StackMap locals:
StackMap stack:
40: aload 10
ldc "--version"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 93
goto 144
StackMap locals:
StackMap stack:
41: aload 10
ldc "-llvm-path"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 127
goto 144
42: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.dontWriteBytecode:Z
43: goto 170
44: StackMap locals:
StackMap stack:
iinc 8 1
45: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
46: iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmpge 49
47: aload 0
aload 6
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
putfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
48: goto 170
49: StackMap locals:
StackMap stack:
ldc "Argument expected for the -c option"
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
50: invokestatic com.oracle.graal.python.shell.GraalPythonMain.printShortHelp:()V
51: goto 170
52: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.ignoreEnv:Z
53: goto 170
54: StackMap locals:
StackMap stack:
aload 3
ldc "--help"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
55: goto 170
56: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
57: goto 170
58: StackMap locals:
StackMap stack:
iload 8
iconst_1
iadd
aload 6
invokeinterface java.util.List.size:()I
if_icmpge 62
59: aload 6
iload 8
iconst_1
iadd
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 11
start local 11 60: aload 0
new java.lang.StringBuilder
dup
ldc "import runpy; runpy._run_module_as_main('"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "')"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
end local 11 61: goto 170
62: StackMap locals:
StackMap stack:
ldc "Argument expected for the -m option"
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
63: invokestatic com.oracle.graal.python.shell.GraalPythonMain.printShortHelp:()V
64: goto 170
65: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.quietFlag:Z
66: goto 170
67: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
68: aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.ignoreEnv:Z
69: aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.isolateFlag:Z
70: goto 170
71: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
72: goto 170
73: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
74: goto 170
75: StackMap locals:
StackMap stack:
iinc 8 1
76: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
ifnonnull 79
77: aload 0
ldc ""
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
78: goto 80
79: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
80: StackMap locals:
StackMap stack:
iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmpge 83
81: aload 0
dup
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
82: goto 170
83: StackMap locals:
StackMap stack:
ldc "Argument expected for the -W option"
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
84: invokestatic com.oracle.graal.python.shell.GraalPythonMain.printShortHelp:()V
85: goto 170
86: StackMap locals:
StackMap stack:
iinc 8 1
87: iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmplt 170
88: ldc "Argument expected for the -X option"
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
89: invokestatic com.oracle.graal.python.shell.GraalPythonMain.printShortHelp:()V
90: goto 170
91: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
92: goto 170
93: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.launcher.Launcher$VersionAction.PrintAndExit:Lorg/graalvm/launcher/Launcher$VersionAction;
putfield com.oracle.graal.python.shell.GraalPythonMain.versionAction:Lorg/graalvm/launcher/Launcher$VersionAction;
94: goto 170
95: StackMap locals:
StackMap stack:
aload 0
getstatic org.graalvm.launcher.Launcher$VersionAction.PrintAndContinue:Lorg/graalvm/launcher/Launcher$VersionAction;
putfield com.oracle.graal.python.shell.GraalPythonMain.versionAction:Lorg/graalvm/launcher/Launcher$VersionAction;
96: goto 170
97: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
ifeq 102
98: invokestatic com.oracle.graal.python.shell.GraalPythonMain.isAOT:()Z
ifne 170
99: aload 7
ldc "agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=y"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
100: aload 5
ldc "-debug-java"
invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
pop
101: goto 170
102: StackMap locals:
StackMap stack:
aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
103: goto 170
104: StackMap locals:
StackMap stack:
aload 3
ldc "--engine.TraceCompilation"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
105: aload 3
ldc "--engine.TraceCompilationDetails"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
106: aload 3
ldc "--engine.TraceInlining"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
107: aload 3
ldc "--engine.TraceSplitting"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
108: aload 3
ldc "--engine.TraceCompilationPolymorphism"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
109: aload 3
ldc "--engine.TraceAssumptions"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
110: aload 3
ldc "--engine.TraceTransferToInterpreter"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
111: aload 3
ldc "--engine.TracePerformanceWarnings=all"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
112: aload 3
ldc "--engine.CompilationFailureAction=Print"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
113: aload 5
ldc "-debug-perf"
invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
pop
114: goto 170
115: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
ifeq 118
116: aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.multiContext:Z
117: goto 170
118: StackMap locals:
StackMap stack:
aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
119: goto 170
120: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
ifeq 125
121: aload 7
ldc "Dgraal.Dump="
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
122: aload 5
ldc "--engine.BackgroundCompilation=false"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
123: aload 5
ldc "-dump"
invokevirtual java.util.ArrayList.remove:(Ljava/lang/Object;)Z
pop
124: goto 170
125: StackMap locals:
StackMap stack:
aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
126: goto 170
127: StackMap locals:
StackMap stack:
new com.oracle.truffle.llvm.toolchain.launchers.common.Driver
dup
ldc "llvm-ar"
invokespecial com.oracle.truffle.llvm.toolchain.launchers.common.Driver.<init>:(Ljava/lang/String;)V
invokevirtual com.oracle.truffle.llvm.toolchain.launchers.common.Driver.getLLVMBinDir:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
128: iconst_0
invokestatic java.lang.System.exit:(I)V
129: goto 170
130: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.unbufferedIO:Z
131: goto 170
132: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
133: aload 0
aload 9
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.addRelaunchArg:(Ljava/lang/String;)V
134: aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
135: goto 170
136: StackMap locals:
StackMap stack:
iinc 8 1
137: aload 0
aload 6
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
putfield com.oracle.graal.python.shell.GraalPythonMain.checkHashPycsMode:Ljava/lang/String;
138: goto 170
139: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
ifeq 142
140: aload 0
iconst_1
putfield com.oracle.graal.python.shell.GraalPythonMain.snaptshotStartup:Z
141: goto 170
142: StackMap locals:
StackMap stack:
aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
143: goto 170
144: StackMap locals:
StackMap stack:
aload 9
ldc "-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 148
145: aload 0
aload 9
putfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
146: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
147: goto 170
148: StackMap locals:
StackMap stack:
aload 9
ldc "-W"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 155
149: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
ifnonnull 152
150: aload 0
ldc ""
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
151: goto 153
152: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
153: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
new java.lang.StringBuilder
dup_x1
swap
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
iconst_2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
154: goto 170
StackMap locals:
StackMap stack:
155: aload 9
ldc "--"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 164
aload 9
invokevirtual java.lang.String.length:()I
iconst_2
if_icmple 164
156: aload 9
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
ldc ""
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 11
start local 11 157: iconst_0
istore 12
start local 12 158: goto 162
159: StackMap locals: java.lang.String[] int
StackMap stack:
aload 11
iload 12
aaload
astore 13
start local 13 160: aload 6
iload 8
iconst_1
iadd
iload 12
iadd
new java.lang.StringBuilder
dup
ldc "-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(ILjava/lang/Object;)V
end local 13 161: iinc 12 1
StackMap locals:
StackMap stack:
162: iload 12
aload 11
arraylength
if_icmplt 159
end local 12 end local 11 163: goto 170
164: StackMap locals:
StackMap stack:
aload 9
ldc "--llvm."
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 168
165: aload 9
ldc "--python.CoreHome"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 168
166: aload 9
ldc "--python.StdLibHome"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 168
167: aload 9
ldc "--python.CAPI"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 169
168: StackMap locals:
StackMap stack:
aload 0
aload 9
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.addRelaunchArg:(Ljava/lang/String;)V
169: StackMap locals:
StackMap stack:
aload 3
aload 9
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
170: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
ifnonnull 171
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ifnull 175
171: StackMap locals:
StackMap stack:
iinc 8 1
172: iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmpge 177
173: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
aload 6
iload 8
aload 6
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
174: goto 177
end local 9 175: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
176: iload 8
aload 6
invokeinterface java.util.List.size:()I
if_icmplt 10
end local 8 177: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifeq 179
178: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
ldc ""
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
179: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.List.isEmpty:()Z
ifne 181
180: aload 5
aload 7
invokestatic com.oracle.graal.python.shell.GraalPythonMain.subExec:(Ljava/util/List;Ljava/util/List;)V
181: StackMap locals:
StackMap stack:
aload 3
areturn
end local 7 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 182 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 182 1 givenArgs Ljava/util/List<Ljava/lang/String;>;
0 182 2 polyglotOptions Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
1 182 3 unrecognized Ljava/util/ArrayList<Ljava/lang/String;>;
2 182 4 defaultEnvironmentArgs Ljava/util/List<Ljava/lang/String;>;
3 182 5 inputArgs Ljava/util/ArrayList<Ljava/lang/String;>;
6 182 6 arguments Ljava/util/List<Ljava/lang/String;>;
7 182 7 subprocessArgs Ljava/util/List<Ljava/lang/String;>;
9 177 8 i I
11 175 9 arg Ljava/lang/String;
60 61 11 module Ljava/lang/String;
157 163 11 split [Ljava/lang/String;
158 163 12 j I
160 161 13 optionChar Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
givenArgs
polyglotOptions
protected void validateArguments(java.util.Map<java.lang.String, java.lang.String>);
descriptor: (Ljava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.multiContext:Z
ifeq 3
1: aload 0
new java.util.HashMap
dup
aload 1
invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
putfield com.oracle.graal.python.shell.GraalPythonMain.enginePolyglotOptions:Ljava/util/Map;
2: aload 1
invokeinterface java.util.Map.clear:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 4 1 polyglotOptions Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
polyglotOptions
private void addRelaunchArg(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
ifnonnull 2
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 4 1 arg Ljava/lang/String;
MethodParameters:
Name Flags
arg
private java.lang.String[] execListWithRelaunchArgs(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
ifnonnull 2
1: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 1
aastore
areturn
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 3: aload 2
aload 1
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
4: aload 2
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
5: aload 2
aload 2
invokevirtual java.util.ArrayList.size:()I
anewarray java.lang.String
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 6 1 executableName Ljava/lang/String;
3 6 2 execList Ljava/util/ArrayList<Ljava/lang/String;>;
MethodParameters:
Name Flags
executableName
private static void printShortHelp();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...\nTry `python -h' for more information."
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
1: return
LocalVariableTable:
Start End Slot Name Signature
private static void print(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 0
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 string Ljava/lang/String;
MethodParameters:
Name Flags
string
private java.lang.String[] getExecutableList();
descriptor: ()[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=1
start local 0 0: invokestatic org.graalvm.nativeimage.ImageInfo.inImageCode:()Z
ifeq 2
1: aload 0
invokestatic org.graalvm.nativeimage.ProcessProperties.getExecutableName:()Ljava/lang/String;
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.execListWithRelaunchArgs:(Ljava/lang/String;)[Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
getstatic com.oracle.graal.python.shell.GraalPythonMain.BASH_LAUNCHER_EXEC_NAME:Ljava/lang/String;
ifnull 4
3: aload 0
getstatic com.oracle.graal.python.shell.GraalPythonMain.BASH_LAUNCHER_EXEC_NAME:Ljava/lang/String;
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.execListWithRelaunchArgs:(Ljava/lang/String;)[Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 6: aload 1
ldc "java.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic java.io.File.separator:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "bin"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic java.io.File.separator:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "java"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: aload 2
aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: ldc "_JAVA_OPTIONS"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 9: ldc "JAVA_TOOL_OPTIONS"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 10: invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
invokeinterface java.lang.management.RuntimeMXBean.getInputArguments:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 18
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.StringBuilder java.util.ArrayList java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
11: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 12: aload 5
ldc "(-Xrunjdwp:|-agentlib:jdwp=).*suspend=y.*"
invokevirtual java.lang.String.matches:(Ljava/lang/String;)Z
ifeq 14
13: aload 5
ldc "suspend=y"
ldc "suspend=n"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
astore 5
14: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.StringBuilder java.util.ArrayList java.lang.String java.lang.String java.lang.String java.util.Iterator
StackMap stack:
aload 3
ifnull 15
aload 3
aload 5
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifne 18
StackMap locals:
StackMap stack:
15: aload 4
ifnull 17
aload 4
aload 5
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 17
16: goto 18
17: StackMap locals:
StackMap stack:
aload 2
aload 5
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 5 18: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.StringBuilder java.util.ArrayList java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
19: aload 2
ldc "-classpath"
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
20: aload 2
ldc "java.class.path"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
21: aload 2
ldc Lcom/oracle/graal/python/shell/GraalPythonMain;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
22: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
ifnull 24
23: aload 2
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.relaunchArgs:Ljava/util/List;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
24: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.StringBuilder java.util.ArrayList java.lang.String java.lang.String
StackMap stack:
aload 2
aload 2
invokevirtual java.util.ArrayList.size:()I
anewarray java.lang.String
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
5 25 1 sb Ljava/lang/StringBuilder;
6 25 2 exec_list Ljava/util/ArrayList<Ljava/lang/String;>;
9 25 3 javaOptions Ljava/lang/String;
10 25 4 javaToolOptions Ljava/lang/String;
12 18 5 arg Ljava/lang/String;
private java.lang.String getExecutable();
descriptor: ()Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=1
start local 0 0: invokestatic org.graalvm.nativeimage.ImageInfo.inImageBuildtimeCode:()Z
ifeq 2
1: ldc ""
areturn
2: StackMap locals:
StackMap stack:
getstatic com.oracle.graal.python.shell.GraalPythonMain.BASH_LAUNCHER_EXEC_NAME:Ljava/lang/String;
ifnull 4
3: getstatic com.oracle.graal.python.shell.GraalPythonMain.BASH_LAUNCHER_EXEC_NAME:Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getExecutableList:()[Ljava/lang/String;
astore 1
start local 1 5: iconst_0
istore 2
start local 2 6: goto 10
7: StackMap locals: java.lang.String[] int
StackMap stack:
aload 1
iload 2
aaload
ldc "\\s"
invokevirtual java.lang.String.matches:(Ljava/lang/String;)Z
ifeq 9
8: aload 1
iload 2
new java.lang.StringBuilder
dup
ldc "'"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
iload 2
aaload
ldc "'"
ldc "\\'"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aastore
9: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
aload 1
arraylength
if_icmplt 7
end local 2 11: ldc " "
aload 1
invokestatic java.lang.String.join:(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
5 12 1 executableList [Ljava/lang/String;
6 11 2 i I
protected void launch(org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Context$Builder;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: aload 1
new java.io.FileOutputStream
dup
getstatic java.io.FileDescriptor.out:Ljava/io/FileDescriptor;
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/FileDescriptor;)V
invokevirtual org.graalvm.polyglot.Context$Builder.out:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
pop
1: aload 1
new java.io.FileOutputStream
dup
getstatic java.io.FileDescriptor.err:Ljava/io/FileDescriptor;
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/FileDescriptor;)V
invokevirtual org.graalvm.polyglot.Context$Builder.err:(Ljava/io/OutputStream;)Lorg/graalvm/polyglot/Context$Builder;
pop
2: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.ignoreEnv:Z
ifne 33
3: ldc "PYTHONPATH"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 4: aload 2
ifnull 6
5: aload 1
ldc "python.PythonPath"
aload 2
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
6: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
ifne 7
ldc "PYTHONINSPECT"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
ifnonnull 7
iconst_0
goto 8
StackMap locals:
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
7: iconst_1
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
8: putfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
9: aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
ifne 10
ldc "PYTHONNOUSERSITE"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
ifnonnull 10
iconst_0
goto 11
StackMap locals:
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
10: iconst_1
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
11: putfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
12: aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
ifne 13
ldc "PYTHONVERBOSE"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
ifnonnull 13
iconst_0
goto 14
StackMap locals:
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
13: iconst_1
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
14: putfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
15: aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.unbufferedIO:Z
ifne 16
ldc "PYTHONUNBUFFERED"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
ifnonnull 16
iconst_0
goto 17
StackMap locals:
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
16: iconst_1
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
17: putfield com.oracle.graal.python.shell.GraalPythonMain.unbufferedIO:Z
18: aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.dontWriteBytecode:Z
ifne 19
ldc "PYTHONDONTWRITEBYTECODE"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
ifnonnull 19
iconst_0
goto 20
StackMap locals:
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain
19: iconst_1
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain int
20: putfield com.oracle.graal.python.shell.GraalPythonMain.dontWriteBytecode:Z
21: ldc "PYTHONWARNINGS"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 22: aload 3
ifnull 27
aload 3
invokevirtual java.lang.String.isEmpty:()Z
ifne 27
23: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
ifnonnull 26
24: aload 0
aload 3
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
25: goto 27
26: StackMap locals: java.lang.String
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
27: StackMap locals:
StackMap stack:
ldc "PYTHONPYCACHEPREFIX"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 28: aload 4
ifnull 30
29: aload 1
ldc "python.PyCachePrefix"
aload 4
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
30: StackMap locals: java.lang.String
StackMap stack:
ldc "PYTHONIOENCODING"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 31: aload 5
ifnull 33
32: aload 1
ldc "python.StandardStreamEncoding"
aload 5
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
end local 5 end local 4 end local 3 end local 2 33: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
ifnull 34
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifeq 35
34: StackMap locals:
StackMap stack:
aload 0
ldc ""
putfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
35: StackMap locals:
StackMap stack:
aload 0
ldc "python.Executable"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getContextOptionIfSetViaCommandLine:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 36: aload 2
ifnull 39
37: aload 1
ldc "python.ExecutableList"
aload 2
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
38: goto 41
39: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc "python.Executable"
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getExecutable:()Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
40: aload 1
ldc "python.ExecutableList"
ldc "\uD83C\uDFC6"
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getExecutableList:()[Ljava/lang/String;
invokestatic java.lang.String.join:(Ljava/lang/CharSequence;[Ljava/lang/CharSequence;)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
41: StackMap locals:
StackMap stack:
aload 1
ldc "python.AlwaysRunExcepthook"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
42: aload 1
ldc "python.InspectFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
43: aload 1
ldc "python.VerboseFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
44: aload 1
ldc "python.IsolateFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.isolateFlag:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
45: aload 1
ldc "python.WarnOptions"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.warnOptions:Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
46: aload 1
ldc "python.DontWriteBytecodeFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.dontWriteBytecode:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
47: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
ifeq 49
48: aload 1
ldc "log.python.level"
ldc "FINE"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
49: StackMap locals:
StackMap stack:
aload 1
ldc "python.QuietFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.quietFlag:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
50: aload 1
ldc "python.NoUserSiteFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noUserSite:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
51: aload 1
ldc "python.NoSiteFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
52: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
ifne 54
53: aload 1
ldc "python.ForceImportSite"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
54: StackMap locals:
StackMap stack:
aload 1
ldc "python.IgnoreEnvironmentFlag"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.ignoreEnv:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
55: aload 1
ldc "python.UnbufferedIO"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.unbufferedIO:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
56: aload 0
getstatic java.lang.System.in:Ljava/io/InputStream;
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.createConsoleHandler:(Ljava/io/InputStream;Ljava/io/OutputStream;)Lcom/oracle/graal/python/shell/ConsoleHandler;
astore 3
start local 3 57: aload 1
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.programArgs:Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
anewarray java.lang.String
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
invokevirtual org.graalvm.polyglot.Context$Builder.arguments:(Ljava/lang/String;[Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
58: aload 1
aload 3
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.createInputStream:()Ljava/io/InputStream;
invokevirtual org.graalvm.polyglot.Context$Builder.in:(Ljava/io/InputStream;)Lorg/graalvm/polyglot/Context$Builder;
pop
59: aload 1
ldc "python.TerminalIsInteractive"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.stdinIsInteractive:Z
invokestatic java.lang.Boolean.toString:(Z)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
60: aload 1
ldc "python.TerminalWidth"
aload 3
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.getTerminalWidth:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
61: aload 1
ldc "python.TerminalHeight"
aload 3
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.getTerminalHeight:()I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
62: aload 1
ldc "python.CheckHashPycsMode"
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.checkHashPycsMode:Ljava/lang/String;
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
pop
63: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.multiContext:Z
ifeq 65
64: aload 1
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;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.enginePolyglotOptions:Ljava/util/Map;
invokevirtual org.graalvm.polyglot.Engine$Builder.options:(Ljava/util/Map;)Lorg/graalvm/polyglot/Engine$Builder;
invokevirtual org.graalvm.polyglot.Engine$Builder.build:()Lorg/graalvm/polyglot/Engine;
invokevirtual org.graalvm.polyglot.Context$Builder.engine:(Lorg/graalvm/polyglot/Engine;)Lorg/graalvm/polyglot/Context$Builder;
pop
65: StackMap locals: com.oracle.graal.python.shell.ConsoleHandler
StackMap stack:
iconst_1
istore 4
start local 4 66: aconst_null
astore 5
aconst_null
astore 6
67: aload 1
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 7
start local 7 68: aload 0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.versionAction:Lorg/graalvm/launcher/Launcher$VersionAction;
aload 7
invokevirtual org.graalvm.polyglot.Context.getEngine:()Lorg/graalvm/polyglot/Engine;
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.runVersionAction:(Lorg/graalvm/launcher/Launcher$VersionAction;Lorg/graalvm/polyglot/Engine;)V
69: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.snaptshotStartup:Z
ifeq 71
70: aload 0
aload 7
new java.lang.StringBuilder
dup
ldc "__graalpython__.startup_wall_clock_ts = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic com.oracle.graal.python.shell.GraalPythonMain.startupWallClockTime:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc "; __graalpython__.startup_nano = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic com.oracle.graal.python.shell.GraalPythonMain.startupNanoTime:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
pop
71: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String com.oracle.graal.python.shell.ConsoleHandler int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.quietFlag:Z
ifne 75
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.verboseFlag:Z
ifne 72
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ifnonnull 75
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
ifnonnull 75
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.stdinIsInteractive:Z
ifeq 75
72: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Python "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 7
ldc "import sys; sys.version + ' on ' + sys.platform"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
73: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
ifne 75
74: ldc "Type \"help\", \"copyright\", \"credits\" or \"license\" for more information."
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
75: StackMap locals:
StackMap stack:
aload 3
aload 7
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setContext:(Lorg/graalvm/polyglot/Context;)V
76: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ifnonnull 77
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
ifnull 88
77: StackMap locals:
StackMap stack:
aload 0
aload 7
aload 3
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalNonInteractive:(Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)V
78: iconst_0
istore 4
79: goto 88
StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
80: astore 8
start local 8 81: aload 8
invokevirtual org.graalvm.polyglot.PolyglotException.isExit:()Z
ifne 84
82: aload 8
invokestatic com.oracle.graal.python.shell.GraalPythonMain.printPythonLikeStackTrace:(Lorg/graalvm/polyglot/PolyglotException;)V
83: goto 88
84: StackMap locals: org.graalvm.polyglot.PolyglotException
StackMap stack:
aload 8
invokevirtual org.graalvm.polyglot.PolyglotException.getExitStatus:()I
istore 4
end local 8 85: goto 88
86: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String com.oracle.graal.python.shell.ConsoleHandler int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.nio.file.NoSuchFileException
astore 8
start local 8 87: aload 8
invokestatic com.oracle.graal.python.shell.GraalPythonMain.printFileNotFoundException:(Ljava/nio/file/NoSuchFileException;)V
end local 8 88: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ifnonnull 89
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
ifnull 90
StackMap locals:
StackMap stack:
89: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
ifeq 92
90: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield com.oracle.graal.python.shell.GraalPythonMain.inspectFlag:Z
91: aload 0
aload 7
aload 3
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.readEvalPrint:(Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)I
istore 4
92: StackMap locals:
StackMap stack:
aload 7
ifnull 105
aload 7
invokevirtual org.graalvm.polyglot.Context.close:()V
goto 105
StackMap locals:
StackMap stack: java.lang.Throwable
93: astore 5
aload 7
ifnull 94
aload 7
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 7 StackMap locals:
StackMap stack:
94: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
95: astore 6
aload 5
ifnonnull 96
aload 6
astore 5
goto 97
StackMap locals:
StackMap stack:
96: aload 5
aload 6
if_acmpeq 97
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
97: aload 5
athrow
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context$Builder java.lang.String com.oracle.graal.python.shell.ConsoleHandler int
StackMap stack: java.io.IOException
98: astore 5
start local 5 99: iconst_1
istore 4
100: aload 5
invokevirtual java.io.IOException.printStackTrace:()V
end local 5 101: aload 3
aconst_null
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setContext:(Lorg/graalvm/polyglot/Context;)V
goto 106
102: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
103: aload 3
aconst_null
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setContext:(Lorg/graalvm/polyglot/Context;)V
104: aload 9
athrow
105: StackMap locals:
StackMap stack:
aload 3
aconst_null
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setContext:(Lorg/graalvm/polyglot/Context;)V
106: StackMap locals:
StackMap stack:
iload 4
invokestatic java.lang.System.exit:(I)V
107: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 108 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 108 1 contextBuilder Lorg/graalvm/polyglot/Context$Builder;
4 33 2 pythonpath Ljava/lang/String;
22 33 3 envWarnOptions Ljava/lang/String;
28 33 4 cachePrefix Ljava/lang/String;
31 33 5 encoding Ljava/lang/String;
36 108 2 executable Ljava/lang/String;
57 108 3 consoleHandler Lcom/oracle/graal/python/shell/ConsoleHandler;
66 108 4 rc I
68 94 7 context Lorg/graalvm/polyglot/Context;
81 85 8 e Lorg/graalvm/polyglot/PolyglotException;
87 88 8 e Ljava/nio/file/NoSuchFileException;
99 101 5 e Ljava/io/IOException;
Exception table:
from to target type
77 79 80 Class org.graalvm.polyglot.PolyglotException
77 79 86 Class java.nio.file.NoSuchFileException
68 92 93 any
67 95 95 any
66 98 98 Class java.io.IOException
66 101 102 any
MethodParameters:
Name Flags
contextBuilder
private java.lang.String getContextOptionIfSetViaCommandLine(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "polyglot."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ifnull 2
1: new java.lang.StringBuilder
dup
ldc "polyglot."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.givenArguments:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.String top java.util.Iterator
StackMap stack:
3: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 4: aload 2
new java.lang.StringBuilder
dup
ldc "--"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 9
5: aload 2
ldc "="
iconst_2
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 4
start local 4 6: aload 4
arraylength
iconst_1
if_icmple 8
7: aload 4
iconst_1
aaload
areturn
8: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.String java.lang.String java.util.Iterator java.lang.String[]
StackMap stack:
ldc "true"
areturn
end local 4 end local 2 9: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain java.lang.String top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
10: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 11 1 key Ljava/lang/String;
4 9 2 f Ljava/lang/String;
6 9 4 splits [Ljava/lang/String;
MethodParameters:
Name Flags
key
private static void printFileNotFoundException(java.nio.file.NoSuchFileException);
descriptor: (Ljava/nio/file/NoSuchFileException;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.nio.file.NoSuchFileException.getReason:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: ldc "No such file or directory"
astore 1
3: StackMap locals: java.lang.String
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc Lcom/oracle/graal/python/shell/GraalPythonMain;
invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": can't open file '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.nio.file.NoSuchFileException.getFile:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "': "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 e Ljava/nio/file/NoSuchFileException;
1 5 1 reason Ljava/lang/String;
MethodParameters:
Name Flags
e
private static void printPythonLikeStackTrace(org.graalvm.polyglot.PolyglotException);
descriptor: (Lorg/graalvm/polyglot/PolyglotException;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
invokevirtual org.graalvm.polyglot.PolyglotException.getPolyglotStackTrace:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
goto 19
StackMap locals: org.graalvm.polyglot.PolyglotException java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.polyglot.PolyglotException$StackFrame
astore 2
start local 2 3: aload 2
invokevirtual org.graalvm.polyglot.PolyglotException$StackFrame.isGuestFrame:()Z
ifeq 19
4: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 5: aload 2
invokevirtual org.graalvm.polyglot.PolyglotException$StackFrame.getSourceLocation:()Lorg/graalvm/polyglot/SourceSection;
astore 5
start local 5 6: aload 2
invokevirtual org.graalvm.polyglot.PolyglotException$StackFrame.getRootName:()Ljava/lang/String;
astore 6
start local 6 7: aload 5
ifnull 19
8: aload 4
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: aload 5
invokevirtual org.graalvm.polyglot.SourceSection.getSource:()Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Source.getPath:()Ljava/lang/String;
astore 7
start local 7 10: aload 7
ifnull 12
11: aload 4
ldc "File "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: StackMap locals: org.graalvm.polyglot.PolyglotException java.util.ArrayList org.graalvm.polyglot.PolyglotException$StackFrame java.util.Iterator java.lang.StringBuilder org.graalvm.polyglot.SourceSection java.lang.String java.lang.String
StackMap stack:
aload 4
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
13: aload 4
aload 5
invokevirtual org.graalvm.polyglot.SourceSection.getSource:()Lorg/graalvm/polyglot/Source;
invokevirtual org.graalvm.polyglot.Source.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 4
ldc "\", line "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: aload 4
aload 5
invokevirtual org.graalvm.polyglot.SourceSection.getStartLine:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
16: aload 4
ldc ", in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: aload 4
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
18: aload 1
aload 4
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 7 end local 6 end local 5 end local 4 end local 2 19: StackMap locals: org.graalvm.polyglot.PolyglotException java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
20: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Traceback (most recent call last):"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
21: aload 1
aload 1
invokevirtual java.util.ArrayList.size:()I
invokevirtual java.util.ArrayList.listIterator:(I)Ljava/util/ListIterator;
astore 2
start local 2 22: goto 24
23: StackMap locals: org.graalvm.polyglot.PolyglotException java.util.ArrayList java.util.ListIterator
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 2
invokeinterface java.util.ListIterator.previous:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
24: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.ListIterator.hasPrevious:()Z
ifne 23
25: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 0
invokevirtual org.graalvm.polyglot.PolyglotException.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
26: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 e Lorg/graalvm/polyglot/PolyglotException;
1 27 1 stack Ljava/util/ArrayList<Ljava/lang/String;>;
3 19 2 frame Lorg/graalvm/polyglot/PolyglotException$StackFrame;
5 19 4 sb Ljava/lang/StringBuilder;
6 19 5 sourceSection Lorg/graalvm/polyglot/SourceSection;
7 19 6 rootName Ljava/lang/String;
10 19 7 path Ljava/lang/String;
22 27 2 listIterator Ljava/util/ListIterator<Ljava/lang/String;>;
MethodParameters:
Name Flags
e
private void evalNonInteractive(org.graalvm.polyglot.Context, com.oracle.graal.python.shell.ConsoleHandler);
descriptor: (Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokestatic com.oracle.graal.python.shell.GraalPythonMain.setupTerminal:(Lcom/oracle/graal/python/shell/ConsoleHandler;)V
1: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ifnull 4
2: aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.commandString:Ljava/lang/String;
ldc "<string>"
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.build:()Lorg/graalvm/polyglot/Source;
astore 3
start local 3 3: goto 15
end local 3 4: StackMap locals:
StackMap stack:
getstatic com.oracle.graal.python.shell.GraalPythonMain.$assertionsDisabled:Z
ifne 5
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
ifnonnull 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
ldc ""
astore 4
start local 4 6: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
invokestatic java.nio.file.Files.probeContentType:(Ljava/nio/file/Path;)Ljava/lang/String;
astore 4
7: goto 9
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler top java.lang.String
StackMap stack: java.io.IOException
8: pop
9: StackMap locals:
StackMap stack:
new java.io.File
dup
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
start local 5 10: aload 5
invokevirtual java.io.File.isDirectory:()Z
ifne 11
aload 4
ifnull 14
aload 4
ldc "application/zip"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
11: StackMap locals: java.io.File
StackMap stack:
ldc "import sys; sys.path.insert(0, '%s'); import runpy; runpy._run_module_as_main('__main__', False)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.inputFile:Ljava/lang/String;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 6
start local 6 12: aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 6
ldc "<string>"
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.build:()Lorg/graalvm/polyglot/Source;
astore 3
end local 6 start local 3 13: goto 15
end local 3 14: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 5
invokestatic org.graalvm.polyglot.Source.newBuilder:(Ljava/lang/String;Ljava/io/File;)Lorg/graalvm/polyglot/Source$Builder;
ldc "text/x-python"
invokevirtual org.graalvm.polyglot.Source$Builder.mimeType:(Ljava/lang/String;)Lorg/graalvm/polyglot/Source$Builder;
invokevirtual org.graalvm.polyglot.Source$Builder.build:()Lorg/graalvm/polyglot/Source;
astore 3
end local 5 end local 4 start local 3 15: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler org.graalvm.polyglot.Source
StackMap stack:
aload 1
aload 3
invokevirtual org.graalvm.polyglot.Context.eval:(Lorg/graalvm/polyglot/Source;)Lorg/graalvm/polyglot/Value;
pop
16: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 17 1 context Lorg/graalvm/polyglot/Context;
0 17 2 consoleHandler Lcom/oracle/graal/python/shell/ConsoleHandler;
3 4 3 src Lorg/graalvm/polyglot/Source;
13 14 3 src Lorg/graalvm/polyglot/Source;
15 17 3 src Lorg/graalvm/polyglot/Source;
6 15 4 mimeType Ljava/lang/String;
10 15 5 f Ljava/io/File;
12 13 6 runMod Ljava/lang/String;
Exception table:
from to target type
6 7 8 Class java.io.IOException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
context
consoleHandler
protected java.lang.String getLanguageId();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "python"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
protected void printHelp(org.graalvm.options.OptionCategory);
descriptor: (Lorg/graalvm/options/OptionCategory;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "usage: python [option] ... (-c cmd | file) [arg] ...\nOptions and arguments (and corresponding environment variables):\n-B : this disables writing .py[co] files on import\n-c cmd : program passed in as string (terminates option list)\n-E : ignore PYTHON* environment variables (such as PYTHONPATH)\n-h : print this help message and exit (also --help)\n-i : inspect interactively after running script; forces a prompt even\n if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n-m mod : run library module as a script (terminates option list)\n-O : on CPython, this optimizes generated bytecode slightly;\n GraalPython does not use bytecode, and thus this flag has no effect\n-OO : remove doc-strings in addition to the -O optimizations;\n GraalPython does not use bytecode, and thus this flag has no effect\n-R : on CPython, this enables the use of a pseudo-random salt to make\n hash()values of various types be unpredictable between separate\n invocations of the interpreter, as a defense against denial-of-service\n attacks; GraalPython always enables this and the flag has no effect.\n-q : don't print version and copyright messages on interactive startup\n-I : don't add user site and script directory to sys.path; also PYTHONNOUSERSITE\n-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n-S : don't imply 'import site' on initialization\n-u : unbuffered binary stdout and stderr; also PYTHONUNBUFFERED=x\n-v : verbose (trace import statements); also PYTHONVERBOSE=x\n can be supplied multiple times to increase verbosity\n-V : print the Python version number and exit (also --version)\n when given twice, print more information about the build\n-X opt : CPython implementation-specific options. Ignored on GraalPython\n-W arg : warning control; arg is action:message:category:module:lineno\n also PYTHONWARNINGS=arg\nfile : program read from script file\n- : program read from stdin\narg ...: arguments passed to program in sys.argv[1:]\n\nOther environment variables:\nPYTHONSTARTUP: file executed on interactive startup (no default)\nPYTHONPATH : ':'-separated list of directories prefixed to the\n default module search path. The result is sys.path.\nPYTHONHOME : alternate <prefix> directory (or <prefix>:<exec_prefix>).\n The default module search path uses <prefix>/pythonX.X.\nPYTHONCASEOK : ignore case in 'import' statements (Windows).\nPYTHONIOENCODING: Encoding[:errors] used for stdin/stdout/stderr.\nPYTHONHASHSEED: if this variable is set to 'random', the effect is the same\n as specifying the -R option: a random value is used to seed the hashes of\n str, bytes and datetime objects. It can also be set to an integer\n in the range [0,4294967295] to get hash values with a predictable seed.\nPYTHONPYCACHEPREFIX: if this is set, GraalPython will write .pyc files in a mirror\n directory tree at this path, instead of in __pycache__ directories within the source tree.\nGRAAL_PYTHON_ARGS: the value is added as arguments as if passed on the\n commandline. There is one special case: any `$$' in the value is replaced\n with the current process id. To pass a literal `$$', you must escape the\n second `$' like so: `$\\$'\n"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.wantsExperimental:Z
ifeq 3
ldc "\nArguments specific to the Graal Python launcher:\n--show-version : print the Python version number and continue.\n-CC : run the C compiler used for generating GraalPython C extensions.\n All following arguments are passed to the compiler.\n-LD : run the linker used for generating GraalPython C extensions.\n All following arguments are passed to the linker.\n\nEnvironment variables specific to the Graal Python launcher:\nSULONG_LIBRARY_PATH: Specifies the library path for Sulong.\n This is required when starting subprocesses of python.\n"
2: goto 4
StackMap locals:
StackMap stack: java.lang.StringBuilder
3: ldc ""
4: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.options.OptionCategory
StackMap stack: java.lang.StringBuilder java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.oracle.graal.python.shell.GraalPythonMain.print:(Ljava/lang/String;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 7 1 maxCategory Lorg/graalvm/options/OptionCategory;
MethodParameters:
Name Flags
maxCategory
protected java.lang.String[] getDefaultLanguages();
descriptor: ()[Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: iconst_3
anewarray java.lang.String
dup
iconst_0
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aastore
dup
iconst_1
ldc "llvm"
aastore
dup
iconst_2
ldc "regex"
aastore
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
protected void collectArguments(java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "-c"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: aload 1
ldc "-h"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
2: aload 1
ldc "-V"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
3: aload 1
ldc "--version"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: aload 1
ldc "--show-version"
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 6 1 options Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
options
private com.oracle.graal.python.shell.ConsoleHandler createConsoleHandler(java.io.InputStream, java.io.OutputStream);
descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;)Lcom/oracle/graal/python/shell/ConsoleHandler;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.stdinIsInteractive:Z
ifne 2
1: new com.oracle.graal.python.shell.DefaultConsoleHandler
dup
aload 1
invokespecial com.oracle.graal.python.shell.DefaultConsoleHandler.<init>:(Ljava/io/InputStream;)V
areturn
2: StackMap locals:
StackMap stack:
new com.oracle.graal.python.shell.JLineConsoleHandler
dup
aload 1
aload 2
iconst_0
invokespecial com.oracle.graal.python.shell.JLineConsoleHandler.<init>:(Ljava/io/InputStream;Ljava/io/OutputStream;Z)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 3 1 inStream Ljava/io/InputStream;
0 3 2 outStream Ljava/io/OutputStream;
MethodParameters:
Name Flags
inStream
outStream
public int readEvalPrint(org.graalvm.polyglot.Context, com.oracle.graal.python.shell.ConsoleHandler);
descriptor: (Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: aload 0
aload 1
aload 2
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.setupREPL:(Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)V
2: aload 0
aload 1
ldc "import sys; sys"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 3: StackMap locals: int org.graalvm.polyglot.Value
StackMap stack:
aload 1
invokestatic com.oracle.graal.python.shell.GraalPythonMain.doEcho:(Lorg/graalvm/polyglot/Context;)Z
istore 5
start local 5 4: aload 2
iload 5
ifeq 5
aload 4
ldc "ps1"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
goto 6
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int org.graalvm.polyglot.Value int
StackMap stack: com.oracle.graal.python.shell.ConsoleHandler
5: aconst_null
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int org.graalvm.polyglot.Value int
StackMap stack: com.oracle.graal.python.shell.ConsoleHandler java.lang.String
6: invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setPrompt:(Ljava/lang/String;)V
7: aload 2
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.readLine:()Ljava/lang/String;
astore 6
start local 6 8: aload 6
ifnonnull 10
9: new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
10: StackMap locals: java.lang.String
StackMap stack:
aload 6
invokevirtual java.lang.String.isEmpty:()Z
ifne 3
aload 6
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 35
if_icmpne 12
11: goto 3
12: StackMap locals:
StackMap stack:
aconst_null
astore 7
start local 7 13: new java.lang.StringBuilder
dup
aload 6
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
astore 8
start local 8 14: StackMap locals: java.lang.String java.lang.StringBuilder
StackMap stack:
iconst_0
istore 3
15: aload 1
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 8
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
ldc "<stdin>"
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.interactive:(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;
pop
16: goto 3
StackMap locals:
StackMap stack: org.graalvm.polyglot.PolyglotException
17: astore 9
start local 9 18: aload 7
ifnonnull 22
19: iload 5
ifeq 20
aload 4
ldc "ps2"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
goto 21
StackMap locals: org.graalvm.polyglot.PolyglotException
StackMap stack:
20: aconst_null
StackMap locals:
StackMap stack: java.lang.String
21: astore 7
22: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.isIncompleteSource:()Z
ifeq 32
23: aload 2
aload 7
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setPrompt:(Ljava/lang/String;)V
24: aload 2
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.readLine:()Ljava/lang/String;
astore 10
start local 10 25: goto 29
26: StackMap locals: java.lang.String
StackMap stack:
aload 8
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 10
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
27: aload 2
aload 7
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setPrompt:(Ljava/lang/String;)V
28: aload 2
invokevirtual com.oracle.graal.python.shell.ConsoleHandler.readLine:()Ljava/lang/String;
astore 10
29: StackMap locals:
StackMap stack:
aload 10
ifnull 30
aload 10
invokevirtual java.lang.String.isEmpty:()Z
ifeq 26
30: StackMap locals:
StackMap stack:
aload 10
ifnonnull 14
31: new java.io.EOFException
dup
invokespecial java.io.EOFException.<init>:()V
athrow
end local 10 32: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.isExit:()Z
ifeq 34
33: new com.oracle.graal.python.shell.GraalPythonMain$ExitException
dup
aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.getExitStatus:()I
invokespecial com.oracle.graal.python.shell.GraalPythonMain$ExitException.<init>:(I)V
athrow
34: StackMap locals:
StackMap stack:
aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.isHostException:()Z
ifeq 38
35: iconst_1
istore 3
36: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
37: goto 3
StackMap locals:
StackMap stack:
38: aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.isInternalError:()Z
ifeq 43
39: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "An internal error occurred:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
40: aload 9
invokestatic com.oracle.graal.python.shell.GraalPythonMain.printPythonLikeStackTrace:(Lorg/graalvm/polyglot/PolyglotException;)V
41: iconst_1
istore 3
42: goto 3
StackMap locals:
StackMap stack:
43: aload 9
invokevirtual org.graalvm.polyglot.PolyglotException.isGuestException:()Z
ifeq 3
44: iconst_1
istore 3
end local 9 end local 8 end local 7 end local 6 45: goto 3
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int org.graalvm.polyglot.Value int
StackMap stack: java.io.EOFException
46: astore 6
start local 6 47: aload 0
getfield com.oracle.graal.python.shell.GraalPythonMain.noSite:Z
ifne 57
48: aload 0
aload 1
ldc "import site; exit()\n"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
pop
49: goto 57
StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int org.graalvm.polyglot.Value int java.io.EOFException
StackMap stack: org.graalvm.polyglot.PolyglotException
50: astore 7
start local 7 51: aload 7
invokevirtual org.graalvm.polyglot.PolyglotException.isExit:()Z
ifeq 54
52: iload 3
53: ireturn
54: StackMap locals: org.graalvm.polyglot.PolyglotException
StackMap stack:
aload 7
invokevirtual org.graalvm.polyglot.PolyglotException.isCancelled:()Z
ifeq 56
55: goto 3
56: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "error while calling exit"
aload 6
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 7 57: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.println:()V
58: iload 3
59: ireturn
end local 6 60: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int org.graalvm.polyglot.Value int
StackMap stack: org.graalvm.shadowed.org.jline.reader.UserInterruptException
pop
end local 5 61: goto 3
end local 4 62: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler int
StackMap stack: com.oracle.graal.python.shell.GraalPythonMain$ExitException
astore 4
start local 4 63: aload 4
getfield com.oracle.graal.python.shell.GraalPythonMain$ExitException.code:I
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 64 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 64 1 context Lorg/graalvm/polyglot/Context;
0 64 2 consoleHandler Lcom/oracle/graal/python/shell/ConsoleHandler;
1 64 3 lastStatus I
3 62 4 sys Lorg/graalvm/polyglot/Value;
4 61 5 doEcho Z
8 45 6 input Ljava/lang/String;
13 45 7 continuePrompt Ljava/lang/String;
14 45 8 sb Ljava/lang/StringBuilder;
18 45 9 e Lorg/graalvm/polyglot/PolyglotException;
25 32 10 additionalInput Ljava/lang/String;
47 60 6 e Ljava/io/EOFException;
51 57 7 e2 Lorg/graalvm/polyglot/PolyglotException;
63 64 4 e Lcom/oracle/graal/python/shell/GraalPythonMain$ExitException;
Exception table:
from to target type
15 16 17 Class org.graalvm.polyglot.PolyglotException
7 11 46 Class java.io.EOFException
12 45 46 Class java.io.EOFException
48 49 50 Class org.graalvm.polyglot.PolyglotException
7 11 60 Class org.graalvm.shadowed.org.jline.reader.UserInterruptException
12 45 60 Class org.graalvm.shadowed.org.jline.reader.UserInterruptException
1 53 62 Class com.oracle.graal.python.shell.GraalPythonMain$ExitException
54 59 62 Class com.oracle.graal.python.shell.GraalPythonMain$ExitException
60 62 62 Class com.oracle.graal.python.shell.GraalPythonMain$ExitException
MethodParameters:
Name Flags
context
consoleHandler
private 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: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.getLanguageId:()Ljava/lang/String;
aload 2
ldc "<internal>"
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 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 1 1 context Lorg/graalvm/polyglot/Context;
0 1 2 code Ljava/lang/String;
MethodParameters:
Name Flags
context
code
private void setupREPL(org.graalvm.polyglot.Context, com.oracle.graal.python.shell.ConsoleHandler);
descriptor: (Lorg/graalvm/polyglot/Context;Lcom/oracle/graal/python/shell/ConsoleHandler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=13, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
ldc "import sys\ngetattr(sys, '__interactivehook__', lambda: None)()\n"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
pop
1: aload 0
aload 1
ldc "import readline; readline"
invokevirtual com.oracle.graal.python.shell.GraalPythonMain.evalInternal:(Lorg/graalvm/polyglot/Context;Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 2: aload 3
ldc "get_completer"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 4
start local 4 3: aload 3
ldc "get_auto_history"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 5
start local 5 4: aload 3
ldc "add_history"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 6
start local 6 5: aload 3
ldc "get_history_item"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 7
start local 7 6: aload 3
ldc "replace_history_item"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 8
start local 8 7: aload 3
ldc "remove_history_item"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 9
start local 9 8: aload 3
ldc "clear_history"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 10
start local 10 9: aload 3
ldc "get_current_history_length"
invokevirtual org.graalvm.polyglot.Value.getMember:(Ljava/lang/String;)Lorg/graalvm/polyglot/Value;
astore 11
start local 11 10: aconst_null
astore 12
start local 12 11: aload 4
invokevirtual org.graalvm.polyglot.Value.canExecute:()Z
ifeq 13
12: aload 4
invokedynamic apply(Lorg/graalvm/polyglot/Value;)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/graal/python/shell/GraalPythonMain.lambda$0(Lorg/graalvm/polyglot/Value;Ljava/lang/String;)Ljava/util/List; (6)
(Ljava/lang/String;)Ljava/util/List;
astore 12
13: StackMap locals: com.oracle.graal.python.shell.GraalPythonMain org.graalvm.polyglot.Context com.oracle.graal.python.shell.ConsoleHandler org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value org.graalvm.polyglot.Value java.util.function.Function
StackMap stack:
aload 2
14: aload 5
invokedynamic getAsBoolean(Lorg/graalvm/polyglot/Value;)Ljava/util/function/BooleanSupplier;
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:
()Z
com/oracle/graal/python/shell/GraalPythonMain.lambda$1(Lorg/graalvm/polyglot/Value;)Z (6)
()Z
15: aload 11
invokedynamic getAsInt(Lorg/graalvm/polyglot/Value;)Ljava/util/function/IntSupplier;
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:
()I
com/oracle/graal/python/shell/GraalPythonMain.lambda$2(Lorg/graalvm/polyglot/Value;)I (6)
()I
16: aload 6
invokedynamic accept(Lorg/graalvm/polyglot/Value;)Ljava/util/function/Consumer;
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;)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$3(Lorg/graalvm/polyglot/Value;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
17: aload 7
invokedynamic apply(Lorg/graalvm/polyglot/Value;)Ljava/util/function/IntFunction;
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:
(I)Ljava/lang/Object;
com/oracle/graal/python/shell/GraalPythonMain.lambda$4(Lorg/graalvm/polyglot/Value;I)Ljava/lang/String; (6)
(I)Ljava/lang/String;
18: aload 8
invokedynamic accept(Lorg/graalvm/polyglot/Value;)Ljava/util/function/BiConsumer;
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;)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$5(Lorg/graalvm/polyglot/Value;Ljava/lang/Integer;Ljava/lang/String;)V (6)
(Ljava/lang/Integer;Ljava/lang/String;)V
19: aload 9
invokedynamic accept(Lorg/graalvm/polyglot/Value;)Ljava/util/function/IntConsumer;
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:
(I)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$6(Lorg/graalvm/polyglot/Value;I)V (6)
(I)V
20: aload 10
invokedynamic run(Lorg/graalvm/polyglot/Value;)Ljava/lang/Runnable;
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:
()V
com/oracle/graal/python/shell/GraalPythonMain.lambda$7(Lorg/graalvm/polyglot/Value;)V (6)
()V
21: aload 12
22: invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setupReader:(Ljava/util/function/BooleanSupplier;Ljava/util/function/IntSupplier;Ljava/util/function/Consumer;Ljava/util/function/IntFunction;Ljava/util/function/BiConsumer;Ljava/util/function/IntConsumer;Ljava/lang/Runnable;Ljava/util/function/Function;)V
23: return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 24 0 this Lcom/oracle/graal/python/shell/GraalPythonMain;
0 24 1 context Lorg/graalvm/polyglot/Context;
0 24 2 consoleHandler Lcom/oracle/graal/python/shell/ConsoleHandler;
2 24 3 readline Lorg/graalvm/polyglot/Value;
3 24 4 getCompleter Lorg/graalvm/polyglot/Value;
4 24 5 shouldRecord Lorg/graalvm/polyglot/Value;
5 24 6 addHistory Lorg/graalvm/polyglot/Value;
6 24 7 getHistoryItem Lorg/graalvm/polyglot/Value;
7 24 8 setHistoryItem Lorg/graalvm/polyglot/Value;
8 24 9 deleteHistoryItem Lorg/graalvm/polyglot/Value;
9 24 10 clearHistory Lorg/graalvm/polyglot/Value;
10 24 11 getHistorySize Lorg/graalvm/polyglot/Value;
11 24 12 completer Ljava/util/function/Function<Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;>;
MethodParameters:
Name Flags
context
consoleHandler
private static void setupTerminal(com.oracle.graal.python.shell.ConsoleHandler);
descriptor: (Lcom/oracle/graal/python/shell/ConsoleHandler;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic getAsBoolean()Ljava/util/function/BooleanSupplier;
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:
()Z
com/oracle/graal/python/shell/GraalPythonMain.lambda$8()Z (6)
()Z
invokedynamic getAsInt()Ljava/util/function/IntSupplier;
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:
()I
com/oracle/graal/python/shell/GraalPythonMain.lambda$9()I (6)
()I
invokedynamic accept()Ljava/util/function/Consumer;
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;)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$10(Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
1: invokedynamic apply()Ljava/util/function/IntFunction;
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:
(I)Ljava/lang/Object;
com/oracle/graal/python/shell/GraalPythonMain.lambda$11(I)Ljava/lang/String; (6)
(I)Ljava/lang/String;
invokedynamic accept()Ljava/util/function/BiConsumer;
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;)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$12(Ljava/lang/Integer;Ljava/lang/String;)V (6)
(Ljava/lang/Integer;Ljava/lang/String;)V
2: invokedynamic accept()Ljava/util/function/IntConsumer;
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:
(I)V
com/oracle/graal/python/shell/GraalPythonMain.lambda$13(I)V (6)
(I)V
3: invokedynamic run()Ljava/lang/Runnable;
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:
()V
com/oracle/graal/python/shell/GraalPythonMain.lambda$14()V (6)
()V
4: aconst_null
5: invokevirtual com.oracle.graal.python.shell.ConsoleHandler.setupReader:(Ljava/util/function/BooleanSupplier;Ljava/util/function/IntSupplier;Ljava/util/function/Consumer;Ljava/util/function/IntFunction;Ljava/util/function/BiConsumer;Ljava/util/function/IntConsumer;Ljava/lang/Runnable;Ljava/util/function/Function;)V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 consoleHandler Lcom/oracle/graal/python/shell/ConsoleHandler;
MethodParameters:
Name Flags
consoleHandler
private static void subExec(java.util.List<java.lang.String>, java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;Ljava/util/List;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.graal.python.shell.GraalPythonMain.getCmdline:(Ljava/util/List;Ljava/util/List;)Ljava/util/List;
astore 2
start local 2 1: new java.lang.ProcessBuilder
dup
aload 2
iconst_0
anewarray java.lang.String
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
invokespecial java.lang.ProcessBuilder.<init>:([Ljava/lang/String;)V
invokevirtual java.lang.ProcessBuilder.inheritIO:()Ljava/lang/ProcessBuilder;
invokevirtual java.lang.ProcessBuilder.start:()Ljava/lang/Process;
invokevirtual java.lang.Process.waitFor:()I
invokestatic java.lang.System.exit:(I)V
2: goto 7
StackMap locals: java.util.List java.util.List java.util.List
StackMap stack: java.lang.Exception
3: astore 3
start local 3 4: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
5: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 3
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: iconst_m1
invokestatic java.lang.System.exit:(I)V
end local 3 7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 args Ljava/util/List<Ljava/lang/String;>;
0 8 1 subProcessDefs Ljava/util/List<Ljava/lang/String;>;
1 8 2 cmd Ljava/util/List<Ljava/lang/String;>;
4 7 3 e Ljava/lang/Exception;
Exception table:
from to target type
1 2 3 Class java.io.IOException
1 2 3 Class java.lang.InterruptedException
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
args
subProcessDefs
static java.util.List<java.lang.String> getCmdline(java.util.List<java.lang.String>, java.util.List<java.lang.String>);
descriptor: (Ljava/util/List;Ljava/util/List;)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: invokestatic com.oracle.graal.python.shell.GraalPythonMain.isAOT:()Z
ifeq 9
2: aload 2
invokestatic org.graalvm.nativeimage.ProcessProperties.getExecutableName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: java.util.List java.util.List java.util.List top java.util.Iterator
StackMap stack:
4: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 5: getstatic com.oracle.graal.python.shell.GraalPythonMain.$assertionsDisabled:Z
ifne 6
aload 3
ldc "D"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: java.util.List java.util.List java.util.List java.lang.String java.util.Iterator
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc "--native."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 7: StackMap locals: java.util.List java.util.List java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: goto 28
9: StackMap locals: java.util.List java.util.List java.util.List
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc "java.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic java.io.File.separator:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "bin"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic java.io.File.separator:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "java"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: ldc "java.vm.name"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
dup
astore 3
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 2
-1300103303: 11
1288211953: 12
default: 19
}
StackMap locals: java.lang.String
StackMap stack:
11: aload 3
ldc "Java HotSpot(TM) 64-Bit Server VM"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
goto 19
StackMap locals:
StackMap stack:
12: aload 3
ldc "Java HotSpot(TM) 64-Bit Client VM"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 16
goto 19
13: StackMap locals:
StackMap stack:
aload 2
ldc "-server"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: aload 2
ldc "-d64"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
15: goto 19
16: StackMap locals:
StackMap stack:
aload 2
ldc "-client"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
17: aload 2
ldc "-d64"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
18: goto 19
19: StackMap locals:
StackMap stack:
aload 2
invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
invokeinterface java.lang.management.RuntimeMXBean.getInputArguments:()Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
20: aload 2
ldc "-cp"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
21: aload 2
invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
invokeinterface java.lang.management.RuntimeMXBean.getClassPath:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
22: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 26
StackMap locals: java.util.List java.util.List java.util.List top top java.util.Iterator
StackMap stack:
23: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 24: getstatic com.oracle.graal.python.shell.GraalPythonMain.$assertionsDisabled:Z
ifne 25
aload 4
ldc "D"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 25
aload 4
ldc "agent"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
25: StackMap locals: java.util.List java.util.List java.util.List top java.lang.String java.util.Iterator
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc "-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 26: StackMap locals: java.util.List java.util.List java.util.List top top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
27: aload 2
ldc Lcom/oracle/graal/python/shell/GraalPythonMain;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
28: StackMap locals: java.util.List java.util.List java.util.List
StackMap stack:
aload 2
aload 0
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
29: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 args Ljava/util/List<Ljava/lang/String;>;
0 30 1 subProcessDefs Ljava/util/List<Ljava/lang/String;>;
1 30 2 cmd Ljava/util/List<Ljava/lang/String;>;
5 7 3 subProcArg Ljava/lang/String;
24 26 4 subProcArg Ljava/lang/String;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/util/List<Ljava/lang/String;>;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
args
subProcessDefs
private static java.util.List<java.lang.String> getDefaultEnvironmentArgs();
descriptor: ()Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=9, args_size=0
0: invokestatic com.oracle.graal.python.shell.GraalPythonMain.isAOT:()Z
ifeq 3
1: invokestatic org.graalvm.nativeimage.ProcessProperties.getProcessID:()J
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
astore 0
start local 0 2: goto 4
end local 0 3: StackMap locals:
StackMap stack:
invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
invokeinterface java.lang.management.RuntimeMXBean.getName:()Ljava/lang/String;
ldc "@"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
iconst_0
aaload
astore 0
start local 0 4: StackMap locals: java.lang.String
StackMap stack:
ldc "GRAAL_PYTHON_ARGS"
invokestatic java.lang.System.getenv:(Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 6: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
start local 3 7: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 8: aload 1
ifnull 47
9: aload 1
invokevirtual java.lang.String.toCharArray:()[C
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 45
StackMap locals: java.lang.String java.lang.String java.util.ArrayList com.oracle.graal.python.shell.GraalPythonMain$State java.lang.StringBuilder top int int char[]
StackMap stack:
10: aload 8
iload 6
caload
istore 5
start local 5 11: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 14
iload 5
invokestatic java.lang.Character.isWhitespace:(C)Z
ifeq 14
12: aload 0
aload 2
aload 4
invokestatic com.oracle.graal.python.shell.GraalPythonMain.addArgument:(Ljava/lang/String;Ljava/util/ArrayList;Ljava/lang/StringBuilder;)V
13: goto 44
14: StackMap locals: java.lang.String java.lang.String java.util.ArrayList com.oracle.graal.python.shell.GraalPythonMain$State java.lang.StringBuilder int int int char[]
StackMap stack:
iload 5
bipush 34
if_icmpne 25
15: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 18
16: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
17: goto 44
StackMap locals:
StackMap stack:
18: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 21
19: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
20: goto 44
StackMap locals:
StackMap stack:
21: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.ESCAPE_DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 44
22: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
23: aload 4
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
24: goto 44
StackMap locals:
StackMap stack:
25: iload 5
bipush 39
if_icmpne 36
26: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 29
27: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
28: goto 44
StackMap locals:
StackMap stack:
29: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 32
30: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.NORMAL:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
31: goto 44
StackMap locals:
StackMap stack:
32: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.ESCAPE_SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 44
33: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
34: aload 4
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
35: goto 44
StackMap locals:
StackMap stack:
36: iload 5
bipush 92
if_icmpne 43
37: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 40
38: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.ESCAPE_SINGLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
39: goto 44
StackMap locals:
StackMap stack:
40: aload 3
getstatic com.oracle.graal.python.shell.GraalPythonMain$State.DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
if_acmpne 44
41: getstatic com.oracle.graal.python.shell.GraalPythonMain$State.ESCAPE_DOUBLE_QUOTE:Lcom/oracle/graal/python/shell/GraalPythonMain$State;
astore 3
42: goto 44
43: StackMap locals:
StackMap stack:
aload 4
iload 5
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 5 44: StackMap locals: java.lang.String java.lang.String java.util.ArrayList com.oracle.graal.python.shell.GraalPythonMain$State java.lang.StringBuilder top int int char[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
45: iload 6
iload 7
if_icmplt 10
46: aload 0
aload 2
aload 4
invokestatic com.oracle.graal.python.shell.GraalPythonMain.addArgument:(Ljava/lang/String;Ljava/util/ArrayList;Ljava/lang/StringBuilder;)V
47: StackMap locals: java.lang.String java.lang.String java.util.ArrayList com.oracle.graal.python.shell.GraalPythonMain$State java.lang.StringBuilder
StackMap stack:
aload 2
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
2 3 0 pid Ljava/lang/String;
4 48 0 pid Ljava/lang/String;
5 48 1 envArgsOpt Ljava/lang/String;
6 48 2 envArgs Ljava/util/ArrayList<Ljava/lang/String;>;
7 48 3 s Lcom/oracle/graal/python/shell/GraalPythonMain$State;
8 48 4 sb Ljava/lang/StringBuilder;
11 44 5 x C
Signature: ()Ljava/util/List<Ljava/lang/String;>;
private static void addArgument(java.lang.String, java.util.ArrayList<java.lang.String>, java.lang.StringBuilder);
descriptor: (Ljava/lang/String;Ljava/util/ArrayList;Ljava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual java.lang.StringBuilder.length:()I
ifle 4
1: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
ldc "$$"
aload 0
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
ldc "\\$"
ldc "$"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
astore 3
start local 3 2: aload 1
aload 3
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
3: aload 2
iconst_0
invokevirtual java.lang.StringBuilder.setLength:(I)V
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 pid Ljava/lang/String;
0 5 1 envArgs Ljava/util/ArrayList<Ljava/lang/String;>;
0 5 2 sb Ljava/lang/StringBuilder;
2 4 3 arg Ljava/lang/String;
Signature: (Ljava/lang/String;Ljava/util/ArrayList<Ljava/lang/String;>;Ljava/lang/StringBuilder;)V
MethodParameters:
Name Flags
pid
envArgs
sb
private static boolean doEcho(org.graalvm.polyglot.Context);
descriptor: (Lorg/graalvm/polyglot/Context;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
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 context Lorg/graalvm/polyglot/Context;
MethodParameters:
Name Flags
context
private static java.util.List lambda$0(org.graalvm.polyglot.Value, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/String;)Ljava/util/List;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=4, args_size=2
start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 0
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 3
start local 3 2: goto 5
3: StackMap locals: java.util.List org.graalvm.polyglot.Value
StackMap stack:
aload 2
aload 3
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 0
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
astore 3
5: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.graalvm.polyglot.Value.isString:()Z
ifne 3
6: aload 2
areturn
end local 3 end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 7 1 buffer Ljava/lang/String;
1 7 2 candidates Ljava/util/List<Ljava/lang/String;>;
2 7 3 candidate Lorg/graalvm/polyglot/Value;
private static boolean lambda$1(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
0: aload 0
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asBoolean:()Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static int lambda$2(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
0: aload 0
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asInt:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$3(org.graalvm.polyglot.Value, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 1 0: aload 0
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 item Ljava/lang/String;
private static java.lang.String lambda$4(org.graalvm.polyglot.Value, int);
descriptor: (Lorg/graalvm/polyglot/Value;I)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 1 0: aload 0
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
invokevirtual org.graalvm.polyglot.Value.asString:()Ljava/lang/String;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 pos I
private static void lambda$5(org.graalvm.polyglot.Value, java.lang.Integer, java.lang.String);
descriptor: (Lorg/graalvm/polyglot/Value;Ljava/lang/Integer;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=3, args_size=3
start local 1 start local 2 0: aload 0
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 2
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
return
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 pos Ljava/lang/Integer;
0 1 2 item Ljava/lang/String;
private static void lambda$6(org.graalvm.polyglot.Value, int);
descriptor: (Lorg/graalvm/polyglot/Value;I)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 1 0: aload 0
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 pos I
private static void lambda$7(org.graalvm.polyglot.Value);
descriptor: (Lorg/graalvm/polyglot/Value;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
0: aload 0
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
return
LocalVariableTable:
Start End Slot Name Signature
private static boolean lambda$8();
descriptor: ()Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static int lambda$9();
descriptor: ()I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$10(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 item Ljava/lang/String;
private static java.lang.String lambda$11(int);
descriptor: (I)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 pos I
private static void lambda$12(java.lang.Integer, java.lang.String);
descriptor: (Ljava/lang/Integer;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 pos Ljava/lang/Integer;
0 1 1 item Ljava/lang/String;
private static void lambda$13(int);
descriptor: (I)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 pos I
private static void lambda$14();
descriptor: ()V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=0, locals=0, args_size=0
0: return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "GraalPythonMain.java"
NestMembers:
com.oracle.graal.python.shell.GraalPythonMain$ExitException com.oracle.graal.python.shell.GraalPythonMain$State
InnerClasses:
private final ExitException = com.oracle.graal.python.shell.GraalPythonMain$ExitException of com.oracle.graal.python.shell.GraalPythonMain
private final State = com.oracle.graal.python.shell.GraalPythonMain$State of com.oracle.graal.python.shell.GraalPythonMain
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
protected final VersionAction = org.graalvm.launcher.Launcher$VersionAction of org.graalvm.launcher.Launcher
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 StackFrame = org.graalvm.polyglot.PolyglotException$StackFrame of org.graalvm.polyglot.PolyglotException
public Builder = org.graalvm.polyglot.Source$Builder of org.graalvm.polyglot.Source