public class org.graalvm.compiler.options.OptionsParser
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.options.OptionsParser
super_class: java.lang.Object
{
private static final float FUZZY_MATCH_THRESHOLD;
descriptor: F
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.7
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/options/OptionsParser;
public static java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptors> getOptionsLoader();
descriptor: ()Ljava/lang/Iterable;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=0
0: ldc Lorg/graalvm/compiler/options/OptionDescriptors;
ldc Lorg/graalvm/compiler/options/OptionDescriptors;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
astore 0
start local 0 1: ldc "java.specification.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ldc "1.9"
invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
ifge 2
iconst_1
goto 3
StackMap locals: java.util.ServiceLoader
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 1
start local 1 4: iload 1
ifeq 6
5: aload 0
areturn
6: StackMap locals: int
StackMap stack:
ldc Lorg/graalvm/compiler/options/OptionDescriptors;
invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
astore 2
start local 2 7: aload 0
aload 2
invokestatic org.graalvm.util.CollectionsUtil.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 8 0 graalLoader Ljava/util/ServiceLoader<Lorg/graalvm/compiler/options/OptionDescriptors;>;
4 8 1 java8OrEarlier Z
7 8 2 truffleLoader Ljava/util/ServiceLoader<Lorg/graalvm/compiler/options/OptionDescriptors;>;
Signature: ()Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
public static void parseOptions(org.graalvm.util.EconomicMap<java.lang.String, java.lang.String>, org.graalvm.util.EconomicMap<org.graalvm.compiler.options.OptionKey<?>, java.lang.Object>, java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptors>);
descriptor: (Lorg/graalvm/util/EconomicMap;Lorg/graalvm/util/EconomicMap;Ljava/lang/Iterable;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnull 5
aload 0
invokeinterface org.graalvm.util.EconomicMap.isEmpty:()Z
ifne 5
1: aload 0
invokeinterface org.graalvm.util.EconomicMap.getEntries:()Lorg/graalvm/util/MapCursor;
astore 3
start local 3 2: goto 4
3: StackMap locals: org.graalvm.util.MapCursor
StackMap stack:
aload 3
invokeinterface org.graalvm.util.MapCursor.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 3
invokeinterface org.graalvm.util.MapCursor.getValue:()Ljava/lang/Object;
aload 1
aload 2
invokestatic org.graalvm.compiler.options.OptionsParser.parseOption:(Ljava/lang/String;Ljava/lang/Object;Lorg/graalvm/util/EconomicMap;Ljava/lang/Iterable;)V
4: StackMap locals:
StackMap stack:
aload 3
invokeinterface org.graalvm.util.MapCursor.advance:()Z
ifne 3
end local 3 5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 optionSettings Lorg/graalvm/util/EconomicMap<Ljava/lang/String;Ljava/lang/String;>;
0 6 1 values Lorg/graalvm/util/EconomicMap<Lorg/graalvm/compiler/options/OptionKey<*>;Ljava/lang/Object;>;
0 6 2 loader Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
2 5 3 cursor Lorg/graalvm/util/MapCursor<Ljava/lang/String;Ljava/lang/String;>;
Signature: (Lorg/graalvm/util/EconomicMap<Ljava/lang/String;Ljava/lang/String;>;Lorg/graalvm/util/EconomicMap<Lorg/graalvm/compiler/options/OptionKey<*>;Ljava/lang/Object;>;Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;)V
MethodParameters:
Name Flags
optionSettings
values
loader
public static void parseOptionSettingTo(java.lang.String, org.graalvm.util.EconomicMap<java.lang.String, java.lang.String>);
descriptor: (Ljava/lang/String;Lorg/graalvm/util/EconomicMap;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
bipush 61
invokevirtual java.lang.String.indexOf:(I)I
istore 2
start local 2 1: iload 2
iconst_m1
if_icmpne 3
2: new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Option setting has does not match the pattern <name>=<value>: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: int
StackMap stack:
aload 1
aload 0
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 0
iload 2
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokeinterface org.graalvm.util.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 optionSetting Ljava/lang/String;
0 5 1 dst Lorg/graalvm/util/EconomicMap<Ljava/lang/String;Ljava/lang/String;>;
1 5 2 eqIndex I
Signature: (Ljava/lang/String;Lorg/graalvm/util/EconomicMap<Ljava/lang/String;Ljava/lang/String;>;)V
MethodParameters:
Name Flags
optionSetting
dst
private static org.graalvm.compiler.options.OptionDescriptor lookup(java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptors>, java.lang.String);
descriptor: (Ljava/lang/Iterable;Ljava/lang/String;)Lorg/graalvm/compiler/options/OptionDescriptor;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: java.lang.Iterable java.lang.String top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.OptionDescriptors
astore 2
start local 2 2: aload 2
aload 1
invokeinterface org.graalvm.compiler.options.OptionDescriptors.get:(Ljava/lang/String;)Lorg/graalvm/compiler/options/OptionDescriptor;
astore 4
start local 4 3: aload 4
ifnull 5
4: aload 4
areturn
end local 4 end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 loader Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
0 7 1 name Ljava/lang/String;
2 5 2 optionDescriptors Lorg/graalvm/compiler/options/OptionDescriptors;
3 5 4 desc Lorg/graalvm/compiler/options/OptionDescriptor;
Signature: (Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;Ljava/lang/String;)Lorg/graalvm/compiler/options/OptionDescriptor;
MethodParameters:
Name Flags
loader
name
static void parseOption(java.lang.String, , org.graalvm.util.EconomicMap<org.graalvm.compiler.options.OptionKey<?>, java.lang.Object>, java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptors>);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Lorg/graalvm/util/EconomicMap;Ljava/lang/Iterable;)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
invokestatic org.graalvm.compiler.options.OptionsParser.lookup:(Ljava/lang/Iterable;Ljava/lang/String;)Lorg/graalvm/compiler/options/OptionDescriptor;
astore 4
start local 4 1: aload 4
ifnonnull 12
2: aload 3
aload 0
invokestatic org.graalvm.compiler.options.OptionsParser.fuzzyMatch:(Ljava/lang/Iterable;Ljava/lang/String;)Ljava/util/List;
astore 5
start local 5 3: new java.util.Formatter
dup
invokespecial java.util.Formatter.<init>:()V
astore 6
start local 6 4: aload 6
ldc "Could not find option %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
5: aload 5
invokeinterface java.util.List.isEmpty:()Z
ifne 11
6: aload 6
ldc "%nDid you mean one of the following?"
iconst_0
anewarray java.lang.Object
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
7: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 10
StackMap locals: java.lang.String java.lang.Object org.graalvm.util.EconomicMap java.lang.Iterable org.graalvm.compiler.options.OptionDescriptor java.util.List java.util.Formatter top java.util.Iterator
StackMap stack:
8: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.OptionDescriptor
astore 7
start local 7 9: aload 6
ldc "%n %s=<value>"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 7
invokevirtual org.graalvm.compiler.options.OptionDescriptor.getName:()Ljava/lang/String;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
end local 7 10: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: StackMap locals: java.lang.String java.lang.Object org.graalvm.util.EconomicMap java.lang.Iterable org.graalvm.compiler.options.OptionDescriptor java.util.List java.util.Formatter
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 6
invokevirtual java.util.Formatter.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 12: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.graalvm.compiler.options.OptionDescriptor.getType:()Ljava/lang/Class;
astore 5
start local 5 13: aload 1
instanceof java.lang.String
ifne 19
14: aload 5
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
if_acmpeq 17
15: aload 5
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
astore 7
start local 7 16: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " option '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' must have "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " value, not "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " [toString: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 7 17: StackMap locals: java.lang.Class
StackMap stack:
aload 1
astore 6
start local 6 18: goto 51
end local 6 19: StackMap locals:
StackMap stack:
aload 1
checkcast java.lang.String
astore 7
start local 7 20: aload 5
ldc Ljava/lang/Boolean;
if_acmpne 28
21: ldc "true"
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
22: getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
astore 6
start local 6 23: goto 51
end local 6 StackMap locals: java.lang.String java.lang.Object org.graalvm.util.EconomicMap java.lang.Iterable org.graalvm.compiler.options.OptionDescriptor java.lang.Class top java.lang.String
StackMap stack:
24: ldc "false"
aload 7
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 27
25: getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
astore 6
start local 6 26: goto 51
end local 6 27: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Boolean option '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' must have value \"true\" or \"false\", not \""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
aload 5
ldc Ljava/lang/String;
if_acmpne 31
29: aload 7
astore 6
start local 6 30: goto 51
end local 6 StackMap locals:
StackMap stack:
31: ldc Ljava/lang/Enum;
aload 5
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 34
32: aload 4
invokevirtual org.graalvm.compiler.options.OptionDescriptor.getOptionKey:()Lorg/graalvm/compiler/options/OptionKey;
checkcast org.graalvm.compiler.options.EnumOptionKey
aload 7
invokevirtual org.graalvm.compiler.options.EnumOptionKey.valueOf:(Ljava/lang/String;)Ljava/lang/Object;
astore 6
start local 6 33: goto 51
end local 6 34: StackMap locals:
StackMap stack:
aload 7
invokevirtual java.lang.String.isEmpty:()Z
ifeq 36
35: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Non empty value required for option '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
36: StackMap locals:
StackMap stack:
aload 5
ldc Ljava/lang/Float;
if_acmpne 39
37: aload 7
invokestatic java.lang.Float.parseFloat:(Ljava/lang/String;)F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
astore 6
start local 6 38: goto 51
end local 6 StackMap locals:
StackMap stack:
39: aload 5
ldc Ljava/lang/Double;
if_acmpne 42
40: aload 7
invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
astore 6
start local 6 41: goto 51
end local 6 StackMap locals:
StackMap stack:
42: aload 5
ldc Ljava/lang/Integer;
if_acmpne 45
43: aload 7
invokestatic org.graalvm.compiler.options.OptionsParser.parseLong:(Ljava/lang/String;)J
l2i
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 6
start local 6 44: goto 51
end local 6 StackMap locals:
StackMap stack:
45: aload 5
ldc Ljava/lang/Long;
if_acmpne 48
46: aload 7
invokestatic org.graalvm.compiler.options.OptionsParser.parseLong:(Ljava/lang/String;)J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
astore 6
start local 6 47: goto 51
end local 6 48: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Wrong value for option '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
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;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
49: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
50: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Value for option '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' has invalid number format: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 7 start local 6 51: StackMap locals: java.lang.String java.lang.Object org.graalvm.util.EconomicMap java.lang.Iterable org.graalvm.compiler.options.OptionDescriptor java.lang.Class java.lang.Object
StackMap stack:
aload 4
getfield org.graalvm.compiler.options.OptionDescriptor.optionKey:Lorg/graalvm/compiler/options/OptionKey;
aload 2
aload 6
invokevirtual org.graalvm.compiler.options.OptionKey.update:(Lorg/graalvm/util/EconomicMap;Ljava/lang/Object;)V
52: return
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 53 0 name Ljava/lang/String;
0 53 1 uncheckedValue Ljava/lang/Object;
0 53 2 values Lorg/graalvm/util/EconomicMap<Lorg/graalvm/compiler/options/OptionKey<*>;Ljava/lang/Object;>;
0 53 3 loader Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
1 53 4 desc Lorg/graalvm/compiler/options/OptionDescriptor;
3 12 5 matches Ljava/util/List<Lorg/graalvm/compiler/options/OptionDescriptor;>;
4 12 6 msg Ljava/util/Formatter;
9 10 7 match Lorg/graalvm/compiler/options/OptionDescriptor;
13 53 5 optionType Ljava/lang/Class<*>;
18 19 6 value Ljava/lang/Object;
23 24 6 value Ljava/lang/Object;
26 27 6 value Ljava/lang/Object;
30 31 6 value Ljava/lang/Object;
33 34 6 value Ljava/lang/Object;
38 39 6 value Ljava/lang/Object;
41 42 6 value Ljava/lang/Object;
44 45 6 value Ljava/lang/Object;
47 48 6 value Ljava/lang/Object;
51 53 6 value Ljava/lang/Object;
16 17 7 type Ljava/lang/String;
20 51 7 valueString Ljava/lang/String;
Exception table:
from to target type
36 49 49 Class java.lang.NumberFormatException
Signature: (Ljava/lang/String;Ljava/lang/Object;Lorg/graalvm/util/EconomicMap<Lorg/graalvm/compiler/options/OptionKey<*>;Ljava/lang/Object;>;Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;)V
MethodParameters:
Name Flags
name
uncheckedValue
values
loader
private static long parseLong(java.lang.String);
descriptor: (Ljava/lang/String;)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 1
start local 1 1: lconst_1
lstore 2
start local 2 2: aload 1
ldc "k"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 5
3: ldc 1024
lstore 2
4: goto 13
StackMap locals: java.lang.String long
StackMap stack:
5: aload 1
ldc "m"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 8
6: ldc 1048576
lstore 2
7: goto 13
StackMap locals:
StackMap stack:
8: aload 1
ldc "g"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 11
9: ldc 1073741824
lstore 2
10: goto 13
StackMap locals:
StackMap stack:
11: aload 1
ldc "t"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 13
12: ldc 1099511627776
lstore 2
13: StackMap locals:
StackMap stack:
lload 2
lconst_1
lcmp
ifeq 15
14: aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 1
15: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
lload 2
lmul
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 v Ljava/lang/String;
1 16 1 valueString Ljava/lang/String;
2 16 2 scale J
MethodParameters:
Name Flags
v
static float stringSimiliarity(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)F
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 11
3: StackMap locals: int int
StackMap stack:
iconst_0
istore 4
start local 4 4: goto 9
5: StackMap locals: int
StackMap stack:
aload 0
iload 3
invokevirtual java.lang.String.charAt:(I)C
aload 1
iload 4
invokevirtual java.lang.String.charAt:(I)C
if_icmpne 8
aload 0
iload 3
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
aload 1
iload 4
iconst_1
iadd
invokevirtual java.lang.String.charAt:(I)C
if_icmpne 8
6: iinc 2 1
7: goto 10
8: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
9: iload 4
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmplt 5
end local 4 10: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
if_icmplt 3
end local 3 12: fconst_2
iload 2
i2f
fmul
aload 0
invokevirtual java.lang.String.length:()I
aload 1
invokevirtual java.lang.String.length:()I
iadd
i2f
fdiv
freturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 str1 Ljava/lang/String;
0 13 1 str2 Ljava/lang/String;
1 13 2 hit I
2 12 3 i I
4 10 4 j I
MethodParameters:
Name Flags
str1
str2
private static java.util.List<org.graalvm.compiler.options.OptionDescriptor> fuzzyMatch(java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptors>, java.lang.String);
descriptor: (Ljava/lang/Iterable;Ljava/lang/String;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, 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: aload 0
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: java.lang.Iterable java.lang.String java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.OptionDescriptors
astore 3
start local 3 3: aload 3
aload 1
aload 2
invokestatic org.graalvm.compiler.options.OptionsParser.collectFuzzyMatches:(Ljava/lang/Iterable;Ljava/lang/String;Ljava/util/Collection;)Z
pop
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 loader Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;
0 6 1 optionName Ljava/lang/String;
1 6 2 matches Ljava/util/List<Lorg/graalvm/compiler/options/OptionDescriptor;>;
3 4 3 options Lorg/graalvm/compiler/options/OptionDescriptors;
Signature: (Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptors;>;Ljava/lang/String;)Ljava/util/List<Lorg/graalvm/compiler/options/OptionDescriptor;>;
MethodParameters:
Name Flags
loader
optionName
public static boolean collectFuzzyMatches(java.lang.Iterable<org.graalvm.compiler.options.OptionDescriptor>, java.lang.String, java.util.Collection<org.graalvm.compiler.options.OptionDescriptor>);
descriptor: (Ljava/lang/Iterable;Ljava/lang/String;Ljava/util/Collection;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: aload 0
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: java.lang.Iterable java.lang.String java.util.Collection int top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.OptionDescriptor
astore 4
start local 4 3: aload 4
invokevirtual org.graalvm.compiler.options.OptionDescriptor.getName:()Ljava/lang/String;
aload 1
invokestatic org.graalvm.compiler.options.OptionsParser.stringSimiliarity:(Ljava/lang/String;Ljava/lang/String;)F
fstore 6
start local 6 4: fload 6
ldc 0.7
fcmpl
iflt 7
5: iconst_1
istore 3
6: aload 2
aload 4
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
end local 6 end local 4 7: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 toSearch Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptor;>;
0 9 1 name Ljava/lang/String;
0 9 2 matches Ljava/util/Collection<Lorg/graalvm/compiler/options/OptionDescriptor;>;
1 9 3 found Z
3 7 4 option Lorg/graalvm/compiler/options/OptionDescriptor;
4 7 6 score F
Signature: (Ljava/lang/Iterable<Lorg/graalvm/compiler/options/OptionDescriptor;>;Ljava/lang/String;Ljava/util/Collection<Lorg/graalvm/compiler/options/OptionDescriptor;>;)Z
MethodParameters:
Name Flags
toSearch
name
matches
}
SourceFile: "OptionsParser.java"