public class jdk.internal.org.jline.keymap.BindingReader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.internal.org.jline.keymap.BindingReader
super_class: java.lang.Object
{
protected final jdk.internal.org.jline.utils.NonBlockingReader reader;
descriptor: Ljdk/internal/org/jline/utils/NonBlockingReader;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.lang.StringBuilder opBuffer;
descriptor: Ljava/lang/StringBuilder;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.util.Deque<java.lang.Integer> pushBackChar;
descriptor: Ljava/util/Deque;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/Deque<Ljava/lang/Integer;>;
protected java.lang.String lastBinding;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
public void <init>(jdk.internal.org.jline.utils.NonBlockingReader);
descriptor: (Ljdk/internal/org/jline/utils/NonBlockingReader;)V
flags: (0x0001) ACC_PUBLIC
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.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
putfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
2: aload 0
new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
putfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
3: aload 0
aload 1
putfield jdk.internal.org.jline.keymap.BindingReader.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 5 1 reader Ljdk/internal/org/jline/utils/NonBlockingReader;
MethodParameters:
Name Flags
reader
public <T> T readBinding(jdk.internal.org.jline.keymap.KeyMap<T>);
descriptor: (Ljdk/internal/org/jline/keymap/KeyMap;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
iconst_1
invokevirtual jdk.internal.org.jline.keymap.BindingReader.readBinding:(Ljdk/internal/org/jline/keymap/KeyMap;Ljdk/internal/org/jline/keymap/KeyMap;Z)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 1 1 keys Ljdk/internal/org/jline/keymap/KeyMap<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljdk/internal/org/jline/keymap/KeyMap<TT;>;)TT;
MethodParameters:
Name Flags
keys
public <T> T readBinding(jdk.internal.org.jline.keymap.KeyMap<T>, jdk.internal.org.jline.keymap.KeyMap<T>);
descriptor: (Ljdk/internal/org/jline/keymap/KeyMap;Ljdk/internal/org/jline/keymap/KeyMap;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_1
invokevirtual jdk.internal.org.jline.keymap.BindingReader.readBinding:(Ljdk/internal/org/jline/keymap/KeyMap;Ljdk/internal/org/jline/keymap/KeyMap;Z)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 1 1 keys Ljdk/internal/org/jline/keymap/KeyMap<TT;>;
0 1 2 local Ljdk/internal/org/jline/keymap/KeyMap<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljdk/internal/org/jline/keymap/KeyMap<TT;>;Ljdk/internal/org/jline/keymap/KeyMap<TT;>;)TT;
MethodParameters:
Name Flags
keys
local
public <T> T readBinding(jdk.internal.org.jline.keymap.KeyMap<T>, jdk.internal.org.jline.keymap.KeyMap<T>, );
descriptor: (Ljdk/internal/org/jline/keymap/KeyMap;Ljdk/internal/org/jline/keymap/KeyMap;Z)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aconst_null
putfield jdk.internal.org.jline.keymap.BindingReader.lastBinding:Ljava/lang/String;
1: aconst_null
astore 4
start local 4 2: iconst_1
newarray 10
astore 5
start local 5 3: iconst_0
istore 6
start local 6 4: StackMap locals: java.lang.Object int[] int
StackMap stack:
aload 2
ifnull 6
5: aload 2
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
aload 5
invokevirtual jdk.internal.org.jline.keymap.KeyMap.getBound:(Ljava/lang/CharSequence;[I)Ljava/lang/Object;
astore 4
6: StackMap locals:
StackMap stack:
aload 4
ifnonnull 8
aload 2
ifnull 7
aload 5
iconst_0
iaload
iflt 8
7: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
aload 5
invokevirtual jdk.internal.org.jline.keymap.KeyMap.getBound:(Ljava/lang/CharSequence;[I)Ljava/lang/Object;
astore 4
8: StackMap locals:
StackMap stack:
aload 4
ifnull 20
9: aload 5
iconst_0
iaload
iflt 13
10: aload 0
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
aload 5
iconst_0
iaload
isub
invokevirtual java.lang.StringBuilder.substring:(I)Ljava/lang/String;
invokevirtual jdk.internal.org.jline.keymap.BindingReader.runMacro:(Ljava/lang/String;)V
11: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
aload 5
iconst_0
iaload
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
12: goto 16
13: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.internal.org.jline.keymap.KeyMap.getAmbiguousTimeout:()J
lstore 7
start local 7 14: lload 7
lconst_0
lcmp
ifle 16
aload 0
lload 7
invokevirtual jdk.internal.org.jline.keymap.BindingReader.peekCharacter:(J)I
bipush -2
if_icmpeq 16
15: aconst_null
astore 4
end local 7 16: StackMap locals:
StackMap stack:
aload 4
ifnull 31
17: aload 0
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield jdk.internal.org.jline.keymap.BindingReader.lastBinding:Ljava/lang/String;
18: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iconst_0
invokevirtual java.lang.StringBuilder.setLength:(I)V
19: aload 4
areturn
20: StackMap locals:
StackMap stack:
aload 5
iconst_0
iaload
ifle 31
21: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iconst_0
invokevirtual java.lang.StringBuilder.codePointAt:(I)I
istore 7
start local 7 22: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iload 7
invokestatic java.lang.Character.charCount:(I)I
invokevirtual java.lang.StringBuilder.substring:(I)Ljava/lang/String;
astore 8
start local 8 23: aload 0
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iconst_0
iload 7
invokestatic java.lang.Character.charCount:(I)I
invokevirtual java.lang.StringBuilder.substring:(II)Ljava/lang/String;
putfield jdk.internal.org.jline.keymap.BindingReader.lastBinding:Ljava/lang/String;
24: iload 7
sipush 128
if_icmplt 25
aload 1
invokevirtual jdk.internal.org.jline.keymap.KeyMap.getUnicode:()Ljava/lang/Object;
goto 26
StackMap locals: int java.lang.String
StackMap stack:
25: aload 1
invokevirtual jdk.internal.org.jline.keymap.KeyMap.getNomatch:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
26: astore 4
27: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iconst_0
invokevirtual java.lang.StringBuilder.setLength:(I)V
28: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
29: aload 4
ifnull 31
30: aload 4
areturn
end local 8 end local 7 31: StackMap locals:
StackMap stack:
iload 3
ifne 33
iload 6
ifeq 33
32: goto 39
33: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.internal.org.jline.keymap.BindingReader.readCharacter:()I
istore 7
start local 7 34: iload 7
iconst_m1
if_icmpne 36
35: aconst_null
areturn
36: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
iload 7
invokevirtual java.lang.StringBuilder.appendCodePoint:(I)Ljava/lang/StringBuilder;
pop
37: iconst_1
istore 6
end local 7 38: goto 4
39: StackMap locals:
StackMap stack:
aconst_null
areturn
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 40 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 40 1 keys Ljdk/internal/org/jline/keymap/KeyMap<TT;>;
0 40 2 local Ljdk/internal/org/jline/keymap/KeyMap<TT;>;
0 40 3 block Z
2 40 4 o TT;
3 40 5 remaining [I
4 40 6 hasRead Z
14 16 7 ambiguousTimeout J
22 31 7 cp I
23 31 8 rem Ljava/lang/String;
34 38 7 c I
Signature: <T:Ljava/lang/Object;>(Ljdk/internal/org/jline/keymap/KeyMap<TT;>;Ljdk/internal/org/jline/keymap/KeyMap<TT;>;Z)TT;
MethodParameters:
Name Flags
keys
local
block
public int readCharacter();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifne 2
1: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
invokeinterface java.util.Deque.pop:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
ireturn
2: StackMap locals:
StackMap stack:
bipush -2
istore 1
start local 1 3: iconst_0
istore 2
start local 2 4: goto 9
5: StackMap locals: int int
StackMap stack:
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
ldc 100
invokevirtual jdk.internal.org.jline.utils.NonBlockingReader.read:(J)I
istore 1
6: iload 1
iflt 9
iload 1
i2c
invokestatic java.lang.Character.isHighSurrogate:(C)Z
ifeq 9
7: iload 1
istore 2
8: bipush -2
istore 1
9: StackMap locals:
StackMap stack:
iload 1
bipush -2
if_icmpeq 5
10: iload 2
ifeq 11
iload 2
i2c
iload 1
i2c
invokestatic java.lang.Character.toCodePoint:(CC)I
goto 12
StackMap locals:
StackMap stack:
11: iload 1
StackMap locals:
StackMap stack: int
12: ireturn
end local 2 end local 1 13: StackMap locals: jdk.internal.org.jline.keymap.BindingReader
StackMap stack: jdk.internal.org.jline.utils.ClosedException
astore 1
start local 1 14: new jdk.internal.org.jline.reader.EndOfFileException
dup
aload 1
invokespecial jdk.internal.org.jline.reader.EndOfFileException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 15: StackMap locals:
StackMap stack: java.io.IOException
astore 1
start local 1 16: new java.io.IOError
dup
aload 1
invokespecial java.io.IOError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/internal/org/jline/keymap/BindingReader;
3 13 1 c I
4 13 2 s I
14 15 1 e Ljdk/internal/org/jline/utils/ClosedException;
16 17 1 e Ljava/io/IOException;
Exception table:
from to target type
2 12 13 Class jdk.internal.org.jline.utils.ClosedException
2 12 15 Class java.io.IOException
public int peekCharacter(long);
descriptor: (J)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
invokeinterface java.util.Deque.isEmpty:()Z
ifne 2
1: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
invokeinterface java.util.Deque.peek:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
lload 1
invokevirtual jdk.internal.org.jline.utils.NonBlockingReader.peek:(J)I
3: ireturn
4: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 5: new java.io.IOError
dup
aload 3
invokespecial java.io.IOError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 6 1 timeout J
5 6 3 e Ljava/io/IOException;
Exception table:
from to target type
2 3 4 Class java.io.IOException
MethodParameters:
Name Flags
timeout
public void runMacro(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.String.codePoints:()Ljava/util/stream/IntStream;
aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.pushBackChar:Ljava/util/Deque;
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic accept(Ljava/util/Deque;)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
java/util/Deque.addLast(Ljava/lang/Object;)V (9 itf)
(I)V
invokeinterface java.util.stream.IntStream.forEachOrdered:(Ljava/util/function/IntConsumer;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/internal/org/jline/keymap/BindingReader;
0 2 1 macro Ljava/lang/String;
MethodParameters:
Name Flags
macro
public java.lang.String getCurrentBuffer();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.opBuffer:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/keymap/BindingReader;
public java.lang.String getLastBinding();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.keymap.BindingReader.lastBinding:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/keymap/BindingReader;
}
SourceFile: "BindingReader.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles