final class jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask implements jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask
super_class: java.lang.Object
{
private final java.util.List<jdk.jshell.SourceCodeAnalysis$Suggestion> suggestions;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
private final int anchor;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final jdk.internal.jshell.tool.ConsoleIOContext this$0;
descriptor: Ljdk/internal/jshell/tool/ConsoleIOContext;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(java.util.List<jdk.jshell.SourceCodeAnalysis$Suggestion>, );
descriptor: (Ljdk/internal/jshell/tool/ConsoleIOContext;Ljava/util/List;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
1: aload 0
invokespecial java.lang.Object.<init>:()V
2: aload 0
aload 2
putfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.suggestions:Ljava/util/List;
3: aload 0
iload 3
putfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.anchor:I
4: return
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask;
0 5 2 suggestions Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;
0 5 3 anchor I
Signature: (Ljava/util/List<Ljdk/jshell/SourceCodeAnalysis$Suggestion;>;I)V
MethodParameters:
Name Flags
this$0 final
suggestions
anchor
public java.lang.String description();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.suggestions:Ljava/util/List;
invokeinterface java.util.List.size:()I
bipush 100
if_icmpgt 2
1: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
getfield jdk.internal.jshell.tool.ConsoleIOContext.repl:Ljdk/internal/jshell/tool/JShellTool;
ldc "jshell.console.completion.all.completions"
invokevirtual jdk.internal.jshell.tool.JShellTool.getResourceString:(Ljava/lang/String;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
getfield jdk.internal.jshell.tool.ConsoleIOContext.repl:Ljdk/internal/jshell/tool/JShellTool;
ldc "jshell.console.completion.all.completions.number"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.suggestions:Ljava/util/List;
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual jdk.internal.jshell.tool.JShellTool.messageFormat:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask;
public jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask$Result perform(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Ljdk/internal/jshell/tool/ConsoleIOContext$CompletionTask$Result;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.suggestions:Ljava/util/List;
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
1: 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/SourceCodeAnalysis$Suggestion.continuation()Ljava/lang/String; (9 itf)
(Ljdk/jshell/SourceCodeAnalysis$Suggestion;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: invokeinterface java.util.stream.Stream.distinct:()Ljava/util/stream/Stream;
3: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
4: astore 3
start local 3 5: aload 3
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
6: invokedynamic apply()Ljava/util/function/BinaryOperator;
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;)Ljava/lang/Object;
jdk/internal/jshell/tool/ConsoleIOContext.access$1(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.reduce:(Ljava/util/function/BinaryOperator;)Ljava/util/Optional;
7: astore 4
start local 4 8: aload 4
aload 0
iload 2
invokedynamic apply(Ljdk/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask;I)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/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask.lambda$2(ILjava/lang/String;)Ljava/lang/String; (7)
(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
ldc ""
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 9: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
getfield jdk.internal.jshell.tool.ConsoleIOContext.in:Ljdk/internal/org/jline/reader/impl/LineReaderImpl;
aload 5
invokevirtual jdk.internal.org.jline.reader.impl.LineReaderImpl.putString:(Ljava/lang/CharSequence;)V
10: aload 3
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 13
11: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
getfield jdk.internal.jshell.tool.ConsoleIOContext.in:Ljdk/internal/org/jline/reader/impl/LineReaderImpl;
invokevirtual jdk.internal.org.jline.reader.impl.LineReaderImpl.getTerminal:()Ljdk/internal/org/jline/terminal/Terminal;
invokeinterface jdk.internal.org.jline.terminal.Terminal.writer:()Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.println:()V
12: aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.this$0:Ljdk/internal/jshell/tool/ConsoleIOContext;
aload 3
invokevirtual jdk.internal.jshell.tool.ConsoleIOContext.printColumns:(Ljava/util/List;)V
13: StackMap locals: java.util.List java.util.Optional java.lang.String
StackMap stack:
aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.suggestions:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 14
getstatic jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask$Result.NO_DATA:Ljdk/internal/jshell/tool/ConsoleIOContext$CompletionTask$Result;
goto 15
StackMap locals:
StackMap stack:
14: getstatic jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask$Result.FINISH:Ljdk/internal/jshell/tool/ConsoleIOContext$CompletionTask$Result;
StackMap locals:
StackMap stack: jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask$Result
15: areturn
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 16 0 this Ljdk/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask;
0 16 1 text Ljava/lang/String;
0 16 2 cursor I
5 16 3 candidates Ljava/util/List<Ljava/lang/String;>;
8 16 4 prefix Ljava/util/Optional<Ljava/lang/String;>;
9 16 5 prefixStr Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
text
cursor
private java.lang.String lambda$2(int, java.lang.String);
descriptor: (ILjava/lang/String;)Ljava/lang/String;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 2
iload 1
aload 0
getfield jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask.anchor:I
isub
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/jshell/tool/ConsoleIOContext$AllSuggestionsCompletionTask;
0 1 2 str Ljava/lang/String;
}
SourceFile: "ConsoleIOContext.java"
NestHost: jdk.internal.jshell.tool.ConsoleIOContext
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private final AllSuggestionsCompletionTask = jdk.internal.jshell.tool.ConsoleIOContext$AllSuggestionsCompletionTask of jdk.internal.jshell.tool.ConsoleIOContext
private abstract CompletionTask = jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask of jdk.internal.jshell.tool.ConsoleIOContext
public final Result = jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask$Result of jdk.internal.jshell.tool.ConsoleIOContext$CompletionTask
public abstract Suggestion = jdk.jshell.SourceCodeAnalysis$Suggestion of jdk.jshell.SourceCodeAnalysis