public class jdk.internal.org.jline.terminal.impl.PosixPtyTerminal extends jdk.internal.org.jline.terminal.impl.AbstractPosixTerminal
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
super_class: jdk.internal.org.jline.terminal.impl.AbstractPosixTerminal
{
private final java.io.InputStream in;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.OutputStream out;
descriptor: Ljava/io/OutputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.InputStream masterInput;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.OutputStream masterOutput;
descriptor: Ljava/io/OutputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.internal.org.jline.utils.NonBlockingInputStream input;
descriptor: Ljdk/internal/org/jline/utils/NonBlockingInputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.OutputStream output;
descriptor: Ljava/io/OutputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.internal.org.jline.utils.NonBlockingReader reader;
descriptor: Ljdk/internal/org/jline/utils/NonBlockingReader;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.PrintWriter writer;
descriptor: Ljava/io/PrintWriter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.Object lock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.lang.Thread inputPumpThread;
descriptor: Ljava/lang/Thread;
flags: (0x0002) ACC_PRIVATE
private java.lang.Thread outputPumpThread;
descriptor: Ljava/lang/Thread;
flags: (0x0002) ACC_PRIVATE
private boolean paused;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.String, java.lang.String, jdk.internal.org.jline.terminal.spi.Pty, java.io.InputStream, java.io.OutputStream, java.nio.charset.Charset);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
getstatic jdk.internal.org.jline.terminal.Terminal$SignalHandler.SIG_DFL:Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;
invokespecial jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;)V
1: 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 2 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
0 2 1 name Ljava/lang/String;
0 2 2 type Ljava/lang/String;
0 2 3 pty Ljdk/internal/org/jline/terminal/spi/Pty;
0 2 4 in Ljava/io/InputStream;
0 2 5 out Ljava/io/OutputStream;
0 2 6 encoding Ljava/nio/charset/Charset;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
name
type
pty
in
out
encoding
public void <init>(java.lang.String, java.lang.String, jdk.internal.org.jline.terminal.spi.Pty, java.io.InputStream, java.io.OutputStream, java.nio.charset.Charset, jdk.internal.org.jline.terminal.Terminal$SignalHandler);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
aload 7
iconst_0
invokespecial jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;Z)V
1: return
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 2 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
0 2 1 name Ljava/lang/String;
0 2 2 type Ljava/lang/String;
0 2 3 pty Ljdk/internal/org/jline/terminal/spi/Pty;
0 2 4 in Ljava/io/InputStream;
0 2 5 out Ljava/io/OutputStream;
0 2 6 encoding Ljava/nio/charset/Charset;
0 2 7 signalHandler Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
name
type
pty
in
out
encoding
signalHandler
public void <init>(java.lang.String, java.lang.String, jdk.internal.org.jline.terminal.spi.Pty, java.io.InputStream, java.io.OutputStream, java.nio.charset.Charset, jdk.internal.org.jline.terminal.Terminal$SignalHandler, boolean);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/io/InputStream;Ljava/io/OutputStream;Ljava/nio/charset/Charset;Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
aload 1
aload 2
aload 3
aload 6
aload 7
invokespecial jdk.internal.org.jline.terminal.impl.AbstractPosixTerminal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/jline/terminal/spi/Pty;Ljava/nio/charset/Charset;Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;)V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
2: aload 0
iconst_1
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
3: aload 0
aload 4
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.io.InputStream
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.in:Ljava/io/InputStream;
4: aload 0
aload 5
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.io.OutputStream
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.out:Ljava/io/OutputStream;
5: aload 0
aload 3
invokeinterface jdk.internal.org.jline.terminal.spi.Pty.getMasterInput:()Ljava/io/InputStream;
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.masterInput:Ljava/io/InputStream;
6: aload 0
aload 3
invokeinterface jdk.internal.org.jline.terminal.spi.Pty.getMasterOutput:()Ljava/io/OutputStream;
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.masterOutput:Ljava/io/OutputStream;
7: aload 0
new jdk.internal.org.jline.terminal.impl.PosixPtyTerminal$InputStreamWrapper
dup
aload 0
aload 1
aload 3
invokeinterface jdk.internal.org.jline.terminal.spi.Pty.getSlaveInput:()Ljava/io/InputStream;
invokestatic jdk.internal.org.jline.utils.NonBlocking.nonBlocking:(Ljava/lang/String;Ljava/io/InputStream;)Ljdk/internal/org/jline/utils/NonBlockingInputStream;
invokespecial jdk.internal.org.jline.terminal.impl.PosixPtyTerminal$InputStreamWrapper.<init>:(Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;Ljdk/internal/org/jline/utils/NonBlockingInputStream;)V
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.input:Ljdk/internal/org/jline/utils/NonBlockingInputStream;
8: aload 0
aload 3
invokeinterface jdk.internal.org.jline.terminal.spi.Pty.getSlaveOutput:()Ljava/io/OutputStream;
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.output:Ljava/io/OutputStream;
9: aload 0
aload 1
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.input:Ljdk/internal/org/jline/utils/NonBlockingInputStream;
aload 0
invokevirtual jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.encoding:()Ljava/nio/charset/Charset;
invokestatic jdk.internal.org.jline.utils.NonBlocking.nonBlocking:(Ljava/lang/String;Ljava/io/InputStream;Ljava/nio/charset/Charset;)Ljdk/internal/org/jline/utils/NonBlockingReader;
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
10: aload 0
new java.io.PrintWriter
dup
new java.io.OutputStreamWriter
dup
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.output:Ljava/io/OutputStream;
aload 0
invokevirtual jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.encoding:()Ljava/nio/charset/Charset;
invokespecial java.io.OutputStreamWriter.<init>:(Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.writer:Ljava/io/PrintWriter;
11: aload 0
invokevirtual jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.parseInfoCmp:()V
12: iload 8
ifne 14
13: aload 0
invokevirtual jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.resume:()V
14: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.String java.lang.String jdk.internal.org.jline.terminal.spi.Pty java.io.InputStream java.io.OutputStream java.nio.charset.Charset jdk.internal.org.jline.terminal.Terminal$SignalHandler int
StackMap stack:
return
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 15 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
0 15 1 name Ljava/lang/String;
0 15 2 type Ljava/lang/String;
0 15 3 pty Ljdk/internal/org/jline/terminal/spi/Pty;
0 15 4 in Ljava/io/InputStream;
0 15 5 out Ljava/io/OutputStream;
0 15 6 encoding Ljava/nio/charset/Charset;
0 15 7 signalHandler Ljdk/internal/org/jline/terminal/Terminal$SignalHandler;
0 15 8 paused Z
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
name
type
pty
in
out
encoding
signalHandler
paused
public java.io.InputStream input();
descriptor: ()Ljava/io/InputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.input:Ljdk/internal/org/jline/utils/NonBlockingInputStream;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
public jdk.internal.org.jline.utils.NonBlockingReader reader();
descriptor: ()Ljdk/internal/org/jline/utils/NonBlockingReader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
public java.io.OutputStream output();
descriptor: ()Ljava/io/OutputStream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.output:Ljava/io/OutputStream;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
public java.io.PrintWriter writer();
descriptor: ()Ljava/io/PrintWriter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.writer:Ljava/io/PrintWriter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
protected void doClose();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial jdk.internal.org.jline.terminal.impl.AbstractPosixTerminal.doClose:()V
1: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.reader:Ljdk/internal/org/jline/utils/NonBlockingReader;
invokevirtual jdk.internal.org.jline.utils.NonBlockingReader.close:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
Exceptions:
throws java.io.IOException
public boolean canPauseResume();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
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 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
public void pause();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
iconst_1
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
2: aload 1
monitorexit
3: goto 6
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
Exception table:
from to target type
1 3 4 any
4 5 4 any
public void pause(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
iconst_1
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
2: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
astore 2
start local 2 3: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
astore 3
start local 3 4: aload 4
monitorexit
5: goto 8
end local 3 end local 2 StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal int top top java.lang.Object
StackMap stack: java.lang.Throwable
6: aload 4
monitorexit
7: athrow
start local 2 start local 3 8: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal int java.lang.Thread java.lang.Thread
StackMap stack:
aload 2
ifnull 10
9: aload 2
invokevirtual java.lang.Thread.interrupt:()V
10: StackMap locals:
StackMap stack:
aload 3
ifnull 12
11: aload 3
invokevirtual java.lang.Thread.interrupt:()V
12: StackMap locals:
StackMap stack:
aload 2
ifnull 14
13: aload 2
invokevirtual java.lang.Thread.join:()V
14: StackMap locals:
StackMap stack:
aload 3
ifnull 16
15: aload 3
invokevirtual java.lang.Thread.join:()V
16: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
0 17 1 wait Z
3 6 2 p1 Ljava/lang/Thread;
8 17 2 p1 Ljava/lang/Thread;
4 6 3 p2 Ljava/lang/Thread;
8 17 3 p2 Ljava/lang/Thread;
Exception table:
from to target type
1 5 6 any
6 7 6 any
Exceptions:
throws java.lang.InterruptedException
MethodParameters:
Name Flags
wait
public void resume();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
iconst_0
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
2: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
ifnonnull 6
3: aload 0
new java.lang.Thread
dup
aload 0
invokedynamic run(Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;)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
jdk/internal/org/jline/terminal/impl/PosixPtyTerminal.pumpIn()V (7)
()V
new java.lang.StringBuilder
dup
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " input pump thread"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
4: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
5: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
6: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
ifnonnull 10
7: aload 0
new java.lang.Thread
dup
aload 0
invokedynamic run(Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;)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
jdk/internal/org/jline/terminal/impl/PosixPtyTerminal.pumpOut()V (7)
()V
new java.lang.StringBuilder
dup
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " output pump thread"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
8: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
9: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
10: StackMap locals:
StackMap stack:
aload 1
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 1
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
Exception table:
from to target type
1 11 12 any
12 13 12 any
public boolean paused();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
aload 1
monitorexit
2: ireturn
3: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
Exception table:
from to target type
1 2 3 any
3 4 3 any
private void pumpIn();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
ifeq 11
2: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
3: aload 1
monitorexit
4: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
5: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
6: aload 3
monitorexit
7: goto 10
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object top java.lang.Object
StackMap stack: java.lang.Throwable
8: aload 3
monitorexit
9: athrow
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object
StackMap stack:
10: return
11: StackMap locals:
StackMap stack:
aload 1
monitorexit
12: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
13: aload 1
monitorexit
14: athrow
15: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.in:Ljava/io/InputStream;
invokevirtual java.io.InputStream.read:()I
istore 1
start local 1 16: iload 1
ifge 19
17: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.input:Ljdk/internal/org/jline/utils/NonBlockingInputStream;
invokevirtual jdk.internal.org.jline.utils.NonBlockingInputStream.close:()V
18: goto 38
19: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.masterOutput:Ljava/io/OutputStream;
iload 1
invokevirtual java.io.OutputStream.write:(I)V
20: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.masterOutput:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.flush:()V
end local 1 21: goto 0
22: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack: java.io.IOException
astore 1
start local 1 23: aload 1
invokevirtual java.io.IOException.printStackTrace:()V
end local 1 24: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
25: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
26: aload 3
monitorexit
27: goto 44
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top top java.lang.Object
StackMap stack: java.lang.Throwable
28: aload 3
monitorexit
29: athrow
30: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack: java.lang.Throwable
astore 2
31: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
32: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
33: aload 3
monitorexit
34: goto 37
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top java.lang.Throwable java.lang.Object
StackMap stack: java.lang.Throwable
35: aload 3
monitorexit
36: athrow
37: StackMap locals:
StackMap stack:
aload 2
athrow
38: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
39: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.inputPumpThread:Ljava/lang/Thread;
40: aload 3
monitorexit
41: goto 44
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top top java.lang.Object
StackMap stack: java.lang.Throwable
42: aload 3
monitorexit
43: athrow
44: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
16 21 1 b I
23 24 1 e Ljava/io/IOException;
Exception table:
from to target type
5 7 8 any
8 9 8 any
1 4 13 any
11 12 13 any
13 14 13 any
0 4 22 Class java.io.IOException
11 22 22 Class java.io.IOException
25 27 28 any
28 29 28 any
0 4 30 any
11 24 30 any
32 34 35 any
35 36 35 any
39 41 42 any
42 43 42 any
private void pumpOut();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.paused:Z
ifeq 11
2: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
3: aload 1
monitorexit
4: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
5: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
6: aload 3
monitorexit
7: goto 10
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object top java.lang.Object
StackMap stack: java.lang.Throwable
8: aload 3
monitorexit
9: athrow
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal java.lang.Object
StackMap stack:
10: return
11: StackMap locals:
StackMap stack:
aload 1
monitorexit
12: goto 15
StackMap locals:
StackMap stack: java.lang.Throwable
13: aload 1
monitorexit
14: athrow
15: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.masterInput:Ljava/io/InputStream;
invokevirtual java.io.InputStream.read:()I
istore 1
start local 1 16: iload 1
ifge 19
17: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.input:Ljdk/internal/org/jline/utils/NonBlockingInputStream;
invokevirtual jdk.internal.org.jline.utils.NonBlockingInputStream.close:()V
18: goto 38
19: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.out:Ljava/io/OutputStream;
iload 1
invokevirtual java.io.OutputStream.write:(I)V
20: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.out:Ljava/io/OutputStream;
invokevirtual java.io.OutputStream.flush:()V
end local 1 21: goto 0
22: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack: java.io.IOException
astore 1
start local 1 23: aload 1
invokevirtual java.io.IOException.printStackTrace:()V
end local 1 24: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
25: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
26: aload 3
monitorexit
27: goto 44
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top top java.lang.Object
StackMap stack: java.lang.Throwable
28: aload 3
monitorexit
29: athrow
30: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack: java.lang.Throwable
astore 2
31: aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
32: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
33: aload 3
monitorexit
34: goto 37
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top java.lang.Throwable java.lang.Object
StackMap stack: java.lang.Throwable
35: aload 3
monitorexit
36: athrow
37: StackMap locals:
StackMap stack:
aload 2
athrow
38: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack:
aload 0
getfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.lock:Ljava/lang/Object;
dup
astore 3
monitorenter
39: aload 0
aconst_null
putfield jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.outputPumpThread:Ljava/lang/Thread;
40: aload 3
monitorexit
41: goto 44
StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal top top java.lang.Object
StackMap stack: java.lang.Throwable
42: aload 3
monitorexit
43: athrow
44: StackMap locals: jdk.internal.org.jline.terminal.impl.PosixPtyTerminal
StackMap stack:
aload 0
invokevirtual jdk.internal.org.jline.terminal.impl.PosixPtyTerminal.close:()V
45: goto 47
StackMap locals:
StackMap stack: java.lang.Throwable
46: pop
47: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Ljdk/internal/org/jline/terminal/impl/PosixPtyTerminal;
16 21 1 b I
23 24 1 e Ljava/io/IOException;
Exception table:
from to target type
5 7 8 any
8 9 8 any
1 4 13 any
11 12 13 any
13 14 13 any
0 4 22 Class java.io.IOException
11 22 22 Class java.io.IOException
25 27 28 any
28 29 28 any
0 4 30 any
11 24 30 any
32 34 35 any
35 36 35 any
39 41 42 any
42 43 42 any
44 45 46 Class java.lang.Throwable
}
SourceFile: "PosixPtyTerminal.java"
NestMembers:
jdk.internal.org.jline.terminal.impl.PosixPtyTerminal$InputStreamWrapper
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract SignalHandler = jdk.internal.org.jline.terminal.Terminal$SignalHandler of jdk.internal.org.jline.terminal.Terminal
private InputStreamWrapper = jdk.internal.org.jline.terminal.impl.PosixPtyTerminal$InputStreamWrapper of jdk.internal.org.jline.terminal.impl.PosixPtyTerminal