public class com.googlecode.lanterna.screen.TerminalScreen extends com.googlecode.lanterna.screen.AbstractScreen
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.googlecode.lanterna.screen.TerminalScreen
super_class: com.googlecode.lanterna.screen.AbstractScreen
{
private final com.googlecode.lanterna.terminal.Terminal terminal;
descriptor: Lcom/googlecode/lanterna/terminal/Terminal;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean isStarted;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean fullRedrawHint;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private com.googlecode.lanterna.screen.TerminalScreen$ScrollHint scrollHint;
descriptor: Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
flags: (0x0002) ACC_PRIVATE
public void <init>(com.googlecode.lanterna.terminal.Terminal);
descriptor: (Lcom/googlecode/lanterna/terminal/Terminal;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic com.googlecode.lanterna.screen.TerminalScreen.DEFAULT_CHARACTER:Lcom/googlecode/lanterna/TextCharacter;
invokespecial com.googlecode.lanterna.screen.TerminalScreen.<init>:(Lcom/googlecode/lanterna/terminal/Terminal;Lcom/googlecode/lanterna/TextCharacter;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
0 2 1 terminal Lcom/googlecode/lanterna/terminal/Terminal;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
terminal
public void <init>(com.googlecode.lanterna.terminal.Terminal, com.googlecode.lanterna.TextCharacter);
descriptor: (Lcom/googlecode/lanterna/terminal/Terminal;Lcom/googlecode/lanterna/TextCharacter;)V
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
invokeinterface com.googlecode.lanterna.terminal.Terminal.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
aload 2
invokespecial com.googlecode.lanterna.screen.AbstractScreen.<init>:(Lcom/googlecode/lanterna/TerminalSize;Lcom/googlecode/lanterna/TextCharacter;)V
1: aload 0
aload 1
putfield com.googlecode.lanterna.screen.TerminalScreen.terminal:Lcom/googlecode/lanterna/terminal/Terminal;
2: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.terminal:Lcom/googlecode/lanterna/terminal/Terminal;
new com.googlecode.lanterna.screen.TerminalScreen$TerminalScreenResizeListener
dup
aload 0
invokespecial com.googlecode.lanterna.screen.TerminalScreen$TerminalScreenResizeListener.<init>:(Lcom/googlecode/lanterna/screen/TerminalScreen;)V
invokeinterface com.googlecode.lanterna.terminal.Terminal.addResizeListener:(Lcom/googlecode/lanterna/terminal/TerminalResizeListener;)V
3: aload 0
iconst_0
putfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
4: aload 0
iconst_1
putfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
0 6 1 terminal Lcom/googlecode/lanterna/terminal/Terminal;
0 6 2 defaultCharacter Lcom/googlecode/lanterna/TextCharacter;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
terminal
defaultCharacter
public synchronized void startScreen();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
3: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.enterPrivateMode:()V
4: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
pop
5: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.clearScreen:()V
6: aload 0
iconst_1
putfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
7: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getCursorPosition:()Lcom/googlecode/lanterna/TerminalPosition;
astore 1
start local 1 8: aload 1
ifnull 12
9: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iconst_1
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorVisible:(Z)V
10: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 1
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
aload 1
invokevirtual com.googlecode.lanterna.TerminalPosition.getRow:()I
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
11: goto 13
12: StackMap locals: com.googlecode.lanterna.TerminalPosition
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iconst_0
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorVisible:(Z)V
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
8 14 1 cursorPosition Lcom/googlecode/lanterna/TerminalPosition;
Exceptions:
throws java.io.IOException
public void stopScreen();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.stopScreen:(Z)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
Exceptions:
throws java.io.IOException
public synchronized void stopScreen(boolean);
descriptor: (Z)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
iload 1
ifeq 5
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.pollInput:()Lcom/googlecode/lanterna/input/KeyStroke;
astore 2
start local 2 4: aload 2
ifnull 5
aload 2
invokevirtual com.googlecode.lanterna.input.KeyStroke.getKeyType:()Lcom/googlecode/lanterna/input/KeyType;
getstatic com.googlecode.lanterna.input.KeyType.EOF:Lcom/googlecode/lanterna/input/KeyType;
if_acmpne 3
end local 2 5: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.exitPrivateMode:()V
6: aload 0
iconst_0
putfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
0 8 1 flushInput Z
4 5 2 keyStroke Lcom/googlecode/lanterna/input/KeyStroke;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
flushInput
public synchronized void refresh(com.googlecode.lanterna.screen.Screen$RefreshType);
descriptor: (Lcom/googlecode/lanterna/screen/Screen$RefreshType;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.isStarted:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
getstatic com.googlecode.lanterna.screen.Screen$RefreshType.AUTOMATIC:Lcom/googlecode/lanterna/screen/Screen$RefreshType;
if_acmpne 3
aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
ifne 4
StackMap locals:
StackMap stack:
3: aload 1
getstatic com.googlecode.lanterna.screen.Screen$RefreshType.COMPLETE:Lcom/googlecode/lanterna/screen/Screen$RefreshType;
if_acmpne 7
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.refreshFull:()V
5: aload 0
iconst_0
putfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
6: goto 16
7: StackMap locals:
StackMap stack:
aload 1
getstatic com.googlecode.lanterna.screen.Screen$RefreshType.AUTOMATIC:Lcom/googlecode/lanterna/screen/Screen$RefreshType;
if_acmpne 15
8: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
ifnull 9
aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
getstatic com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.INVALID:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
if_acmpne 15
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.TerminalSize.getRows:()I
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
imul
i2d
ldc 0.75
dmul
dstore 2
start local 2 10: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getBackBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getFrontBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
dload 2
d2i
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.isVeryDifferent:(Lcom/googlecode/lanterna/screen/ScreenBuffer;I)Z
ifeq 13
11: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.refreshFull:()V
12: goto 16
13: StackMap locals: double
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.refreshByDelta:()V
end local 2 14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.refreshByDelta:()V
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getBackBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getFrontBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.copyTo:(Lcom/googlecode/lanterna/graphics/TextImage;)V
17: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getCursorPosition:()Lcom/googlecode/lanterna/TerminalPosition;
astore 2
start local 2 18: aload 2
ifnull 26
19: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iconst_1
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorVisible:(Z)V
20: aload 2
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
ifle 24
21: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getFrontBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
aload 2
iconst_m1
invokevirtual com.googlecode.lanterna.TerminalPosition.withRelativeColumn:(I)Lcom/googlecode/lanterna/TerminalPosition;
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.getCharacterAt:(Lcom/googlecode/lanterna/TerminalPosition;)Lcom/googlecode/lanterna/TextCharacter;
invokevirtual com.googlecode.lanterna.TextCharacter.isDoubleWidth:()Z
ifeq 24
22: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 2
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
iconst_1
isub
aload 2
invokevirtual com.googlecode.lanterna.TerminalPosition.getRow:()I
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
23: goto 27
24: StackMap locals: com.googlecode.lanterna.TerminalPosition
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 2
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
aload 2
invokevirtual com.googlecode.lanterna.TerminalPosition.getRow:()I
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
25: goto 27
26: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iconst_0
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorVisible:(Z)V
27: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.flush:()V
28: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
0 29 1 refreshType Lcom/googlecode/lanterna/screen/Screen$RefreshType;
10 14 2 threshold D
18 29 2 cursorPosition Lcom/googlecode/lanterna/TerminalPosition;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
refreshType
private void useScrollHint();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
ifnonnull 1
return
1: StackMap locals:
StackMap stack:
aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
getstatic com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.INVALID:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
if_acmpne 4
2: aload 0
aconst_null
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
3: return
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
astore 1
start local 1 5: aload 1
instanceof com.googlecode.lanterna.graphics.Scrollable
ifeq 12
6: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
aload 1
checkcast com.googlecode.lanterna.graphics.Scrollable
invokevirtual com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.applyTo:(Lcom/googlecode/lanterna/graphics/Scrollable;)V
7: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getFrontBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
invokevirtual com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.applyTo:(Lcom/googlecode/lanterna/graphics/Scrollable;)V
end local 1 8: goto 12
9: StackMap locals:
StackMap stack: java.lang.UnsupportedOperationException
pop
10: aload 0
aconst_null
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 2
aload 0
aconst_null
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
aload 2
athrow
StackMap locals:
StackMap stack:
12: aload 0
aconst_null
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
13: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
5 8 1 term Lcom/googlecode/lanterna/terminal/Terminal;
Exception table:
from to target type
1 2 9 Class java.lang.UnsupportedOperationException
4 8 9 Class java.lang.UnsupportedOperationException
1 2 11 any
4 10 11 any
Exceptions:
throws java.io.IOException
private void refreshByDelta();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=15, args_size=1
start local 0 0: new java.util.TreeMap
dup
new com.googlecode.lanterna.screen.TerminalScreen$ScreenPointComparator
dup
invokespecial com.googlecode.lanterna.screen.TerminalScreen$ScreenPointComparator.<init>:()V
invokespecial java.util.TreeMap.<init>:(Ljava/util/Comparator;)V
astore 1
start local 1 1: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
astore 2
start local 2 2: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.useScrollHint:()V
3: iconst_0
istore 3
start local 3 4: goto 20
5: StackMap locals: java.util.Map com.googlecode.lanterna.TerminalSize int
StackMap stack:
iconst_0
istore 4
start local 4 6: goto 18
7: StackMap locals: int
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getBackBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
iload 4
iload 3
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.getCharacterAt:(II)Lcom/googlecode/lanterna/TextCharacter;
astore 5
start local 5 8: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getFrontBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
iload 4
iload 3
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.getCharacterAt:(II)Lcom/googlecode/lanterna/TextCharacter;
astore 6
start local 6 9: aload 5
aload 6
invokevirtual com.googlecode.lanterna.TextCharacter.equals:(Ljava/lang/Object;)Z
ifne 11
10: aload 1
new com.googlecode.lanterna.TerminalPosition
dup
iload 4
iload 3
invokespecial com.googlecode.lanterna.TerminalPosition.<init>:(II)V
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: StackMap locals: com.googlecode.lanterna.TextCharacter com.googlecode.lanterna.TextCharacter
StackMap stack:
aload 5
invokevirtual com.googlecode.lanterna.TextCharacter.isDoubleWidth:()Z
ifeq 14
12: iinc 4 1
13: goto 17
StackMap locals:
StackMap stack:
14: aload 6
invokevirtual com.googlecode.lanterna.TextCharacter.isDoubleWidth:()Z
ifeq 17
15: iload 4
iconst_1
iadd
aload 2
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
if_icmpge 17
16: aload 1
new com.googlecode.lanterna.TerminalPosition
dup
iload 4
iconst_1
iadd
iload 3
invokespecial com.googlecode.lanterna.TerminalPosition.<init>:(II)V
aload 6
bipush 32
invokevirtual com.googlecode.lanterna.TextCharacter.withCharacter:(C)Lcom/googlecode/lanterna/TextCharacter;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 6 end local 5 17: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
18: iload 4
aload 2
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
if_icmplt 7
end local 4 19: iinc 3 1
StackMap locals:
StackMap stack:
20: iload 3
aload 2
invokevirtual com.googlecode.lanterna.TerminalSize.getRows:()I
if_icmplt 5
end local 3 21: aload 1
invokeinterface java.util.Map.isEmpty:()Z
ifeq 23
22: return
23: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.googlecode.lanterna.TerminalPosition
astore 3
start local 3 24: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 3
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
aload 3
invokevirtual com.googlecode.lanterna.TerminalPosition.getRow:()I
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
25: aload 1
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.googlecode.lanterna.TextCharacter
astore 4
start local 4 26: aload 4
invokevirtual com.googlecode.lanterna.TextCharacter.getModifiers:()Ljava/util/EnumSet;
astore 5
start local 5 27: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.resetColorAndSGR:()V
28: aload 5
invokevirtual java.util.EnumSet.iterator:()Ljava/util/Iterator;
astore 7
goto 31
StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet top java.util.Iterator
StackMap stack:
29: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.googlecode.lanterna.SGR
astore 6
start local 6 30: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 6
invokeinterface com.googlecode.lanterna.terminal.Terminal.enableSGR:(Lcom/googlecode/lanterna/SGR;)V
end local 6 31: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
32: aload 4
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 6
start local 6 33: aload 4
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 7
start local 7 34: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 6
invokeinterface com.googlecode.lanterna.terminal.Terminal.setForegroundColor:(Lcom/googlecode/lanterna/TextColor;)V
35: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 7
invokeinterface com.googlecode.lanterna.terminal.Terminal.setBackgroundColor:(Lcom/googlecode/lanterna/TextColor;)V
36: aload 1
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 9
goto 64
StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor top java.util.Iterator
StackMap stack:
37: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.googlecode.lanterna.TerminalPosition
astore 8
start local 8 38: aload 8
aload 3
invokevirtual com.googlecode.lanterna.TerminalPosition.equals:(Ljava/lang/Object;)Z
ifne 41
39: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 8
invokevirtual com.googlecode.lanterna.TerminalPosition.getColumn:()I
aload 8
invokevirtual com.googlecode.lanterna.TerminalPosition.getRow:()I
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
40: aload 8
astore 3
41: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor com.googlecode.lanterna.TerminalPosition java.util.Iterator
StackMap stack:
aload 1
aload 8
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.googlecode.lanterna.TextCharacter
astore 10
start local 10 42: aload 6
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 45
43: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setForegroundColor:(Lcom/googlecode/lanterna/TextColor;)V
44: aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 6
45: StackMap locals: com.googlecode.lanterna.TextCharacter
StackMap stack:
aload 7
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 48
46: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setBackgroundColor:(Lcom/googlecode/lanterna/TextColor;)V
47: aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 7
48: StackMap locals:
StackMap stack:
invokestatic com.googlecode.lanterna.SGR.values:()[Lcom/googlecode/lanterna/SGR;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 58
StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor com.googlecode.lanterna.TerminalPosition java.util.Iterator com.googlecode.lanterna.TextCharacter top int int com.googlecode.lanterna.SGR[]
StackMap stack:
49: aload 14
iload 12
aaload
astore 11
start local 11 50: aload 5
aload 11
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 54
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getModifiers:()Ljava/util/EnumSet;
aload 11
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 54
51: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 11
invokeinterface com.googlecode.lanterna.terminal.Terminal.disableSGR:(Lcom/googlecode/lanterna/SGR;)V
52: aload 5
aload 11
invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
pop
53: goto 57
54: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor com.googlecode.lanterna.TerminalPosition java.util.Iterator com.googlecode.lanterna.TextCharacter com.googlecode.lanterna.SGR int int com.googlecode.lanterna.SGR[]
StackMap stack:
aload 5
aload 11
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 57
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getModifiers:()Ljava/util/EnumSet;
aload 11
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 57
55: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 11
invokeinterface com.googlecode.lanterna.terminal.Terminal.enableSGR:(Lcom/googlecode/lanterna/SGR;)V
56: aload 5
aload 11
invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
pop
end local 11 57: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor com.googlecode.lanterna.TerminalPosition java.util.Iterator com.googlecode.lanterna.TextCharacter top int int com.googlecode.lanterna.SGR[]
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
58: iload 12
iload 13
if_icmplt 49
59: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.getCharacterString:()Ljava/lang/String;
invokeinterface com.googlecode.lanterna.terminal.Terminal.putString:(Ljava/lang/String;)V
60: aload 10
invokevirtual com.googlecode.lanterna.TextCharacter.isDoubleWidth:()Z
ifeq 63
61: aload 3
iconst_2
invokevirtual com.googlecode.lanterna.TerminalPosition.withRelativeColumn:(I)Lcom/googlecode/lanterna/TerminalPosition;
astore 3
62: goto 64
63: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor com.googlecode.lanterna.TerminalPosition java.util.Iterator com.googlecode.lanterna.TextCharacter
StackMap stack:
aload 3
iconst_1
invokevirtual com.googlecode.lanterna.TerminalPosition.withRelativeColumn:(I)Lcom/googlecode/lanterna/TerminalPosition;
astore 3
end local 10 end local 8 64: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.Map com.googlecode.lanterna.TerminalSize com.googlecode.lanterna.TerminalPosition com.googlecode.lanterna.TextCharacter java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 37
65: 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 66 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
1 66 1 updateMap Ljava/util/Map<Lcom/googlecode/lanterna/TerminalPosition;Lcom/googlecode/lanterna/TextCharacter;>;
2 66 2 terminalSize Lcom/googlecode/lanterna/TerminalSize;
4 21 3 y I
6 19 4 x I
8 17 5 backBufferCharacter Lcom/googlecode/lanterna/TextCharacter;
9 17 6 frontBufferCharacter Lcom/googlecode/lanterna/TextCharacter;
24 66 3 currentPosition Lcom/googlecode/lanterna/TerminalPosition;
26 66 4 firstScreenCharacterToUpdate Lcom/googlecode/lanterna/TextCharacter;
27 66 5 currentSGR Ljava/util/EnumSet<Lcom/googlecode/lanterna/SGR;>;
30 31 6 sgr Lcom/googlecode/lanterna/SGR;
33 66 6 currentForegroundColor Lcom/googlecode/lanterna/TextColor;
34 66 7 currentBackgroundColor Lcom/googlecode/lanterna/TextColor;
38 64 8 position Lcom/googlecode/lanterna/TerminalPosition;
42 64 10 newCharacter Lcom/googlecode/lanterna/TextCharacter;
50 57 11 sgr Lcom/googlecode/lanterna/SGR;
Exceptions:
throws java.io.IOException
private void refreshFull();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=12, args_size=1
start local 0 0: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
getstatic com.googlecode.lanterna.TextColor$ANSI.DEFAULT:Lcom/googlecode/lanterna/TextColor$ANSI;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setForegroundColor:(Lcom/googlecode/lanterna/TextColor;)V
1: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
getstatic com.googlecode.lanterna.TextColor$ANSI.DEFAULT:Lcom/googlecode/lanterna/TextColor$ANSI;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setBackgroundColor:(Lcom/googlecode/lanterna/TextColor;)V
2: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.clearScreen:()V
3: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.resetColorAndSGR:()V
4: aload 0
aconst_null
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
5: ldc Lcom/googlecode/lanterna/SGR;
invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
astore 1
start local 1 6: getstatic com.googlecode.lanterna.TextColor$ANSI.DEFAULT:Lcom/googlecode/lanterna/TextColor$ANSI;
astore 2
start local 2 7: getstatic com.googlecode.lanterna.TextColor$ANSI.DEFAULT:Lcom/googlecode/lanterna/TextColor$ANSI;
astore 3
start local 3 8: iconst_0
istore 4
start local 4 9: goto 46
10: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor int
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iconst_0
iload 4
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
11: iconst_0
istore 5
start local 5 12: iconst_0
istore 6
start local 6 13: goto 44
14: StackMap locals: int int
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getBackBuffer:()Lcom/googlecode/lanterna/screen/ScreenBuffer;
iload 6
iload 4
invokevirtual com.googlecode.lanterna.screen.ScreenBuffer.getCharacterAt:(II)Lcom/googlecode/lanterna/TextCharacter;
astore 7
start local 7 15: aload 7
getstatic com.googlecode.lanterna.screen.TerminalScreen.DEFAULT_CHARACTER:Lcom/googlecode/lanterna/TextCharacter;
invokevirtual com.googlecode.lanterna.TextCharacter.equals:(Ljava/lang/Object;)Z
ifeq 17
16: goto 43
17: StackMap locals: com.googlecode.lanterna.TextCharacter
StackMap stack:
aload 2
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 20
18: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setForegroundColor:(Lcom/googlecode/lanterna/TextColor;)V
19: aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getForegroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 2
20: StackMap locals:
StackMap stack:
aload 3
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 23
21: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
invokeinterface com.googlecode.lanterna.terminal.Terminal.setBackgroundColor:(Lcom/googlecode/lanterna/TextColor;)V
22: aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getBackgroundColor:()Lcom/googlecode/lanterna/TextColor;
astore 3
23: StackMap locals:
StackMap stack:
invokestatic com.googlecode.lanterna.SGR.values:()[Lcom/googlecode/lanterna/SGR;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 33
StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor int int int com.googlecode.lanterna.TextCharacter top int int com.googlecode.lanterna.SGR[]
StackMap stack:
24: aload 11
iload 9
aaload
astore 8
start local 8 25: aload 1
aload 8
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 29
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getModifiers:()Ljava/util/EnumSet;
aload 8
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 29
26: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 8
invokeinterface com.googlecode.lanterna.terminal.Terminal.disableSGR:(Lcom/googlecode/lanterna/SGR;)V
27: aload 1
aload 8
invokevirtual java.util.EnumSet.remove:(Ljava/lang/Object;)Z
pop
28: goto 32
29: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor int int int com.googlecode.lanterna.TextCharacter com.googlecode.lanterna.SGR int int com.googlecode.lanterna.SGR[]
StackMap stack:
aload 1
aload 8
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifne 32
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getModifiers:()Ljava/util/EnumSet;
aload 8
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 32
30: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 8
invokeinterface com.googlecode.lanterna.terminal.Terminal.enableSGR:(Lcom/googlecode/lanterna/SGR;)V
31: aload 1
aload 8
invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
pop
end local 8 32: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor int int int com.googlecode.lanterna.TextCharacter top int int com.googlecode.lanterna.SGR[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
33: iload 9
iload 10
if_icmplt 24
34: iload 5
iload 6
if_icmpeq 37
35: aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
iload 6
iload 4
invokeinterface com.googlecode.lanterna.terminal.Terminal.setCursorPosition:(II)V
36: iload 6
istore 5
37: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen java.util.EnumSet com.googlecode.lanterna.TextColor com.googlecode.lanterna.TextColor int int int com.googlecode.lanterna.TextCharacter
StackMap stack:
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminal:()Lcom/googlecode/lanterna/terminal/Terminal;
aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.getCharacterString:()Ljava/lang/String;
invokeinterface com.googlecode.lanterna.terminal.Terminal.putString:(Ljava/lang/String;)V
38: aload 7
invokevirtual com.googlecode.lanterna.TextCharacter.isDoubleWidth:()Z
ifeq 42
39: iinc 5 2
40: iinc 6 1
41: goto 43
42: StackMap locals:
StackMap stack:
iinc 5 1
end local 7 43: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
44: iload 6
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.TerminalSize.getColumns:()I
if_icmplt 14
end local 6 end local 5 45: iinc 4 1
StackMap locals:
StackMap stack:
46: iload 4
aload 0
invokevirtual com.googlecode.lanterna.screen.TerminalScreen.getTerminalSize:()Lcom/googlecode/lanterna/TerminalSize;
invokevirtual com.googlecode.lanterna.TerminalSize.getRows:()I
if_icmplt 10
end local 4 47: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
6 48 1 currentSGR Ljava/util/EnumSet<Lcom/googlecode/lanterna/SGR;>;
7 48 2 currentForegroundColor Lcom/googlecode/lanterna/TextColor;
8 48 3 currentBackgroundColor Lcom/googlecode/lanterna/TextColor;
9 47 4 y I
12 45 5 currentColumn I
13 45 6 x I
15 43 7 newCharacter Lcom/googlecode/lanterna/TextCharacter;
25 32 8 sgr Lcom/googlecode/lanterna/SGR;
Exceptions:
throws java.io.IOException
public com.googlecode.lanterna.terminal.Terminal getTerminal();
descriptor: ()Lcom/googlecode/lanterna/terminal/Terminal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.terminal:Lcom/googlecode/lanterna/terminal/Terminal;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
public com.googlecode.lanterna.input.KeyStroke readInput();
descriptor: ()Lcom/googlecode/lanterna/input/KeyStroke;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.terminal:Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.readInput:()Lcom/googlecode/lanterna/input/KeyStroke;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
Exceptions:
throws java.io.IOException
public com.googlecode.lanterna.input.KeyStroke pollInput();
descriptor: ()Lcom/googlecode/lanterna/input/KeyStroke;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.terminal:Lcom/googlecode/lanterna/terminal/Terminal;
invokeinterface com.googlecode.lanterna.terminal.Terminal.pollInput:()Lcom/googlecode/lanterna/input/KeyStroke;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
Exceptions:
throws java.io.IOException
public synchronized void clear();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.googlecode.lanterna.screen.AbstractScreen.clear:()V
1: aload 0
iconst_1
putfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
2: aload 0
getstatic com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.INVALID:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
public synchronized com.googlecode.lanterna.TerminalSize doResizeIfNecessary();
descriptor: ()Lcom/googlecode/lanterna/TerminalSize;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokespecial com.googlecode.lanterna.screen.AbstractScreen.doResizeIfNecessary:()Lcom/googlecode/lanterna/TerminalSize;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 0
iconst_1
putfield com.googlecode.lanterna.screen.TerminalScreen.fullRedrawHint:Z
3: StackMap locals: com.googlecode.lanterna.TerminalSize
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
1 4 1 newSize Lcom/googlecode/lanterna/TerminalSize;
public void scrollLines(int, int, int);
descriptor: (III)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 1
iload 1
iload 2
if_icmple 2
StackMap locals:
StackMap stack:
1: return
2: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
iload 3
invokespecial com.googlecode.lanterna.screen.AbstractScreen.scrollLines:(III)V
3: new com.googlecode.lanterna.screen.TerminalScreen$ScrollHint
dup
iload 1
iload 2
iload 3
invokespecial com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.<init>:(III)V
astore 4
start local 4 4: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
ifnonnull 7
5: aload 0
aload 4
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
6: goto 12
7: StackMap locals: com.googlecode.lanterna.screen.TerminalScreen$ScrollHint
StackMap stack:
aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
getstatic com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.INVALID:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
if_acmpeq 12
8: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
aload 4
invokevirtual com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.matches:(Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;)Z
ifeq 11
9: aload 0
getfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
dup
getfield com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.distance:I
aload 4
getfield com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.distance:I
iadd
putfield com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.distance:I
10: goto 12
11: StackMap locals:
StackMap stack:
aload 0
getstatic com.googlecode.lanterna.screen.TerminalScreen$ScrollHint.INVALID:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
putfield com.googlecode.lanterna.screen.TerminalScreen.scrollHint:Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
12: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/googlecode/lanterna/screen/TerminalScreen;
0 13 1 firstLine I
0 13 2 lastLine I
0 13 3 distance I
4 13 4 newHint Lcom/googlecode/lanterna/screen/TerminalScreen$ScrollHint;
MethodParameters:
Name Flags
firstLine
lastLine
distance
}
SourceFile: "TerminalScreen.java"
NestMembers:
com.googlecode.lanterna.screen.TerminalScreen$ScreenPointComparator com.googlecode.lanterna.screen.TerminalScreen$ScrollHint com.googlecode.lanterna.screen.TerminalScreen$TerminalScreenResizeListener
InnerClasses:
public final ANSI = com.googlecode.lanterna.TextColor$ANSI of com.googlecode.lanterna.TextColor
public final RefreshType = com.googlecode.lanterna.screen.Screen$RefreshType of com.googlecode.lanterna.screen.Screen
private ScreenPointComparator = com.googlecode.lanterna.screen.TerminalScreen$ScreenPointComparator of com.googlecode.lanterna.screen.TerminalScreen
private ScrollHint = com.googlecode.lanterna.screen.TerminalScreen$ScrollHint of com.googlecode.lanterna.screen.TerminalScreen
private TerminalScreenResizeListener = com.googlecode.lanterna.screen.TerminalScreen$TerminalScreenResizeListener of com.googlecode.lanterna.screen.TerminalScreen