class jdk.jshell.OuterWrapMap
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.jshell.OuterWrapMap
super_class: java.lang.Object
{
private final jdk.jshell.JShell state;
descriptor: Ljdk/jshell/JShell;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, jdk.jshell.OuterSnippetsClassWrap> classOuters;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/jshell/OuterSnippetsClassWrap;>;
void <init>(jdk.jshell.JShell);
descriptor: (Ljdk/jshell/JShell;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jdk.jshell.OuterWrapMap.classOuters:Ljava/util/Map;
2: aload 0
aload 1
putfield jdk.jshell.OuterWrapMap.state:Ljdk/jshell/JShell;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jshell/OuterWrapMap;
0 4 1 state Ljdk/jshell/JShell;
MethodParameters:
Name Flags
state
jdk.jshell.OuterSnippetsClassWrap getOuter(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/jshell/OuterSnippetsClassWrap;
flags: (0x0000)
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: getstatic jdk.jshell.Util.PREFIX_PATTERN:Ljava/util/regex/Pattern;
aload 1
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 2
start local 2 1: aload 2
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 4
aload 2
ldc "class"
invokevirtual java.util.regex.Matcher.group:(Ljava/lang/String;)Ljava/lang/String;
dup
astore 3
start local 3 2: ifnull 4
3: aload 0
getfield jdk.jshell.OuterWrapMap.classOuters:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.jshell.OuterSnippetsClassWrap
areturn
end local 3 4: StackMap locals: java.util.regex.Matcher
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jshell/OuterWrapMap;
0 5 1 className Ljava/lang/String;
1 5 2 matcher Ljava/util/regex/Matcher;
2 4 3 cn Ljava/lang/String;
MethodParameters:
Name Flags
className
private jdk.jshell.Wrap$CompoundWrap wrappedInClass(java.lang.String, java.lang.String, java.util.List<jdk.jshell.Wrap>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljdk/jshell/Wrap$CompoundWrap;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.ArrayList
dup
aload 3
invokeinterface java.util.List.size:()I
iconst_2
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 4
start local 4 1: aload 4
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: ldc "class "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " {\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 4
aload 3
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
5: aload 4
ldc "}\n"
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: new jdk.jshell.Wrap$CompoundWrap
dup
aload 4
invokeinterface java.util.List.toArray:()[Ljava/lang/Object;
invokespecial jdk.jshell.Wrap$CompoundWrap.<init>:([Ljava/lang/Object;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/jshell/OuterWrapMap;
0 7 1 className Ljava/lang/String;
0 7 2 imports Ljava/lang/String;
0 7 3 wraps Ljava/util/List<Ljdk/jshell/Wrap;>;
1 7 4 elems Ljava/util/List<Ljava/lang/Object;>;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljdk/jshell/Wrap;>;)Ljdk/jshell/Wrap$CompoundWrap;
MethodParameters:
Name Flags
className
imports
wraps
jdk.jshell.OuterWrap wrapInClass(java.util.Set<jdk.jshell.Key>, java.util.Collection<jdk.jshell.Snippet>, java.util.List<jdk.jshell.Snippet>, java.util.List<jdk.jshell.Wrap>);
descriptor: (Ljava/util/Set;Ljava/util/Collection;Ljava/util/List;Ljava/util/List;)Ljdk/jshell/OuterWrap;
flags: (0x0000)
Code:
stack=6, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield jdk.jshell.OuterWrapMap.state:Ljdk/jshell/JShell;
getfield jdk.jshell.JShell.maps:Ljdk/jshell/SnippetMaps;
aload 1
aload 2
invokevirtual jdk.jshell.SnippetMaps.packageAndImportsExcept:(Ljava/util/Set;Ljava/util/Collection;)Ljava/lang/String;
astore 5
start local 5 1: new java.lang.StringBuilder
dup
ldc "$JShell$"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
2: invokedynamic compare()Ljava/util/Comparator;
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;)I
jdk/jshell/OuterWrapMap.lambda$0(Ljdk/jshell/Snippet;Ljdk/jshell/Snippet;)I (6)
(Ljdk/jshell/Snippet;Ljdk/jshell/Snippet;)I
invokeinterface java.util.stream.Stream.sorted:(Ljava/util/Comparator;)Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
jdk/jshell/OuterWrapMap.lambda$1(Ljdk/jshell/Snippet;)Ljava/lang/String; (6)
(Ljdk/jshell/Snippet;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
4: ldc "_"
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 6: aload 0
aload 6
aload 5
aload 4
invokevirtual jdk.jshell.OuterWrapMap.wrappedInClass:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljdk/jshell/Wrap$CompoundWrap;
astore 7
start local 7 7: new jdk.jshell.OuterSnippetsClassWrap
dup
aload 6
aload 7
aload 3
aload 4
invokespecial jdk.jshell.OuterSnippetsClassWrap.<init>:(Ljava/lang/String;Ljdk/jshell/Wrap$CompoundWrap;Ljava/util/List;Ljava/util/List;)V
astore 8
start local 8 8: aload 0
getfield jdk.jshell.OuterWrapMap.classOuters:Ljava/util/Map;
aload 6
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 8
areturn
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 10 0 this Ljdk/jshell/OuterWrapMap;
0 10 1 except Ljava/util/Set<Ljdk/jshell/Key;>;
0 10 2 plus Ljava/util/Collection<Ljdk/jshell/Snippet;>;
0 10 3 snippets Ljava/util/List<Ljdk/jshell/Snippet;>;
0 10 4 wraps Ljava/util/List<Ljdk/jshell/Wrap;>;
1 10 5 imports Ljava/lang/String;
6 10 6 className Ljava/lang/String;
7 10 7 w Ljdk/jshell/Wrap$CompoundWrap;
8 10 8 now Ljdk/jshell/OuterSnippetsClassWrap;
Signature: (Ljava/util/Set<Ljdk/jshell/Key;>;Ljava/util/Collection<Ljdk/jshell/Snippet;>;Ljava/util/List<Ljdk/jshell/Snippet;>;Ljava/util/List<Ljdk/jshell/Wrap;>;)Ljdk/jshell/OuterWrap;
MethodParameters:
Name Flags
except
plus
snippets
wraps
jdk.jshell.OuterWrap wrapInTrialClass(jdk.jshell.Wrap);
descriptor: (Ljdk/jshell/Wrap;)Ljdk/jshell/OuterWrap;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jshell.OuterWrapMap.state:Ljdk/jshell/JShell;
getfield jdk.jshell.JShell.maps:Ljdk/jshell/SnippetMaps;
aconst_null
aconst_null
invokevirtual jdk.jshell.SnippetMaps.packageAndImportsExcept:(Ljava/util/Set;Ljava/util/Collection;)Ljava/lang/String;
astore 2
start local 2 1: aload 0
ldc "$JShell$DOESNOTMATTER"
aload 2
2: aload 1
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
3: invokevirtual jdk.jshell.OuterWrapMap.wrappedInClass:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)Ljdk/jshell/Wrap$CompoundWrap;
astore 3
start local 3 4: new jdk.jshell.OuterWrap
dup
aload 3
invokespecial jdk.jshell.OuterWrap.<init>:(Ljdk/jshell/Wrap;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jshell/OuterWrapMap;
0 5 1 wrap Ljdk/jshell/Wrap;
1 5 2 imports Ljava/lang/String;
4 5 3 w Ljdk/jshell/Wrap$CompoundWrap;
MethodParameters:
Name Flags
wrap
jdk.jshell.OuterWrap wrapImport(jdk.jshell.Wrap, jdk.jshell.Snippet);
descriptor: (Ljdk/jshell/Wrap;Ljdk/jshell/Snippet;)Ljdk/jshell/OuterWrap;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new jdk.jshell.OuterImportSnippetWrap
dup
aload 1
aload 2
invokespecial jdk.jshell.OuterImportSnippetWrap.<init>:(Ljdk/jshell/Wrap;Ljdk/jshell/Snippet;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jshell/OuterWrapMap;
0 1 1 guts Ljdk/jshell/Wrap;
0 1 2 sn Ljdk/jshell/Snippet;
MethodParameters:
Name Flags
guts
sn
private static int lambda$0(jdk.jshell.Snippet, jdk.jshell.Snippet);
descriptor: (Ljdk/jshell/Snippet;Ljdk/jshell/Snippet;)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.jshell.Snippet.key:()Ljdk/jshell/Key;
invokevirtual jdk.jshell.Key.index:()I
aload 1
invokevirtual jdk.jshell.Snippet.key:()Ljdk/jshell/Key;
invokevirtual jdk.jshell.Key.index:()I
isub
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 sn1 Ljdk/jshell/Snippet;
0 1 1 sn2 Ljdk/jshell/Snippet;
private static java.lang.String lambda$1(jdk.jshell.Snippet);
descriptor: (Ljdk/jshell/Snippet;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 0
invokevirtual jdk.jshell.Snippet.key:()Ljdk/jshell/Key;
invokevirtual jdk.jshell.Key.index:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.jshell.Snippet.sequenceNumber:()I
invokestatic jdk.jshell.Util.asLetters:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 sn Ljdk/jshell/Snippet;
}
SourceFile: "OuterWrapMap.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public CompoundWrap = jdk.jshell.Wrap$CompoundWrap of jdk.jshell.Wrap