public class jdk.internal.org.jline.utils.Status
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.internal.org.jline.utils.Status
  super_class: java.lang.Object
{
  protected final jdk.internal.org.jline.terminal.impl.AbstractTerminal terminal;
    descriptor: Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final boolean supported;
    descriptor: Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected java.util.List<jdk.internal.org.jline.utils.AttributedString> oldLines;
    descriptor: Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Signature: Ljava/util/List<Ljdk/internal/org/jline/utils/AttributedString;>;

  protected int rows;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected int columns;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected boolean force;
    descriptor: Z
    flags: (0x0004) ACC_PROTECTED

  public static jdk.internal.org.jline.utils.Status getStatus(jdk.internal.org.jline.terminal.Terminal);
    descriptor: (Ljdk/internal/org/jline/terminal/Terminal;)Ljdk/internal/org/jline/utils/Status;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.org.jline.terminal.Terminal terminal
         0: .line 32
            aload 0 /* terminal */
            iconst_1
            invokestatic jdk.internal.org.jline.utils.Status.getStatus:(Ljdk/internal/org/jline/terminal/Terminal;Z)Ljdk/internal/org/jline/utils/Status;
            areturn
        end local 0 // jdk.internal.org.jline.terminal.Terminal terminal
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0  terminal  Ljdk/internal/org/jline/terminal/Terminal;
    MethodParameters:
          Name  Flags
      terminal  

  public static jdk.internal.org.jline.utils.Status getStatus(jdk.internal.org.jline.terminal.Terminal, boolean);
    descriptor: (Ljdk/internal/org/jline/terminal/Terminal;Z)Ljdk/internal/org/jline/utils/Status;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.org.jline.terminal.Terminal terminal
        start local 1 // boolean create
         0: .line 36
            aload 0 /* terminal */
            instanceof jdk.internal.org.jline.terminal.impl.AbstractTerminal
            ifeq 2
         1: .line 37
            aload 0 /* terminal */
            checkcast jdk.internal.org.jline.terminal.impl.AbstractTerminal
            iload 1 /* create */
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getStatus:(Z)Ljdk/internal/org/jline/utils/Status;
            goto 3
         2: .line 38
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 36
      StackMap locals:
      StackMap stack: jdk.internal.org.jline.utils.Status
            areturn
        end local 1 // boolean create
        end local 0 // jdk.internal.org.jline.terminal.Terminal terminal
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  terminal  Ljdk/internal/org/jline/terminal/Terminal;
            0    4     1    create  Z
    MethodParameters:
          Name  Flags
      terminal  
      create    

  public void <init>(jdk.internal.org.jline.terminal.impl.AbstractTerminal);
    descriptor: (Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.org.jline.utils.Status this
        start local 1 // jdk.internal.org.jline.terminal.impl.AbstractTerminal terminal
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 26
            aload 0 /* this */
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            putfield jdk.internal.org.jline.utils.Status.oldLines:Ljava/util/List;
         2: .line 43
            aload 0 /* this */
            aload 1 /* terminal */
            ldc "terminal can not be null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast jdk.internal.org.jline.terminal.impl.AbstractTerminal
            putfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
         3: .line 44
            aload 0 /* this */
            aload 1 /* terminal */
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.change_scroll_region:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getStringCapability:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;)Ljava/lang/String;
            ifnull 7
         4: .line 45
            aload 1 /* terminal */
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.save_cursor:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getStringCapability:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;)Ljava/lang/String;
            ifnull 7
         5: .line 46
            aload 1 /* terminal */
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.restore_cursor:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getStringCapability:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;)Ljava/lang/String;
            ifnull 7
         6: .line 47
            aload 1 /* terminal */
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.cursor_address:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getStringCapability:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;)Ljava/lang/String;
            ifnull 7
            iconst_1
            goto 8
      StackMap locals: jdk.internal.org.jline.utils.Status jdk.internal.org.jline.terminal.impl.AbstractTerminal
      StackMap stack: jdk.internal.org.jline.utils.Status
         7: iconst_0
         8: .line 44
      StackMap locals: jdk.internal.org.jline.utils.Status jdk.internal.org.jline.terminal.impl.AbstractTerminal
      StackMap stack: jdk.internal.org.jline.utils.Status int
            putfield jdk.internal.org.jline.utils.Status.supported:Z
         9: .line 48
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.supported:Z
            ifeq 11
        10: .line 49
            aload 0 /* this */
            invokevirtual jdk.internal.org.jline.utils.Status.resize:()V
        11: .line 51
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.internal.org.jline.terminal.impl.AbstractTerminal terminal
        end local 0 // jdk.internal.org.jline.utils.Status this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Ljdk/internal/org/jline/utils/Status;
            0   12     1  terminal  Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
    MethodParameters:
          Name  Flags
      terminal  

  public void resize();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.org.jline.utils.Status this
         0: .line 54
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.getSize:()Ljdk/internal/org/jline/terminal/Size;
            astore 1 /* size */
        start local 1 // jdk.internal.org.jline.terminal.Size size
         1: .line 55
            aload 0 /* this */
            aload 1 /* size */
            invokevirtual jdk.internal.org.jline.terminal.Size.getRows:()I
            putfield jdk.internal.org.jline.utils.Status.rows:I
         2: .line 56
            aload 0 /* this */
            aload 1 /* size */
            invokevirtual jdk.internal.org.jline.terminal.Size.getColumns:()I
            putfield jdk.internal.org.jline.utils.Status.columns:I
         3: .line 57
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.org.jline.utils.Status.force:Z
         4: .line 58
            return
        end local 1 // jdk.internal.org.jline.terminal.Size size
        end local 0 // jdk.internal.org.jline.utils.Status this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/internal/org/jline/utils/Status;
            1    5     1  size  Ljdk/internal/org/jline/terminal/Size;

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.org.jline.utils.Status this
         0: .line 61
            aload 0 /* this */
            iconst_1
            putfield jdk.internal.org.jline.utils.Status.force:Z
         1: .line 62
            return
        end local 0 // jdk.internal.org.jline.utils.Status this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/org/jline/utils/Status;

  public void redraw();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.org.jline.utils.Status this
         0: .line 65
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.oldLines:Ljava/util/List;
            invokevirtual jdk.internal.org.jline.utils.Status.update:(Ljava/util/List;)V
         1: .line 66
            return
        end local 0 // jdk.internal.org.jline.utils.Status this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/org/jline/utils/Status;

  public void update(java.util.List<jdk.internal.org.jline.utils.AttributedString>);
    descriptor: (Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // jdk.internal.org.jline.utils.Status this
        start local 1 // java.util.List lines
         0: .line 69
            aload 1 /* lines */
            ifnonnull 2
         1: .line 70
            invokestatic java.util.Collections.emptyList:()Ljava/util/List;
            astore 1 /* lines */
         2: .line 72
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.supported:Z
            ifeq 3
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.oldLines:Ljava/util/List;
            aload 1 /* lines */
            invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
            ifeq 4
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.force:Z
            ifne 4
         3: .line 73
      StackMap locals:
      StackMap stack:
            return
         4: .line 75
      StackMap locals:
      StackMap stack:
            aload 1 /* lines */
            invokeinterface java.util.List.size:()I
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.oldLines:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            isub
            istore 2 /* nb */
        start local 2 // int nb
         5: .line 76
            iload 2 /* nb */
            ifle 16
         6: .line 77
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         7: goto 10
         8: .line 78
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.cursor_down:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
         9: .line 77
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            iload 2 /* nb */
            if_icmplt 8
        end local 3 // int i
        11: .line 80
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 15
        13: .line 81
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.cursor_up:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        14: .line 80
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            iload 2 /* nb */
            if_icmplt 13
        end local 3 // int i
        16: .line 84
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.save_cursor:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        17: .line 85
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.clr_eos:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        18: .line 86
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        19: goto 23
        20: .line 87
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.cursor_address:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.rows:I
            aload 1 /* lines */
            invokeinterface java.util.List.size:()I
            isub
            iload 3 /* i */
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        21: .line 88
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.writer:()Ljava/io/PrintWriter;
            aload 1 /* lines */
            iload 3 /* i */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast jdk.internal.org.jline.utils.AttributedString
            iconst_0
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.columns:I
            invokevirtual jdk.internal.org.jline.utils.AttributedString.columnSubSequence:(II)Ljdk/internal/org/jline/utils/AttributedString;
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            invokevirtual jdk.internal.org.jline.utils.AttributedString.toAnsi:(Ljdk/internal/org/jline/terminal/Terminal;)Ljava/lang/String;
            invokevirtual java.io.PrintWriter.write:(Ljava/lang/String;)V
        22: .line 86
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 3 /* i */
            aload 1 /* lines */
            invokeinterface java.util.List.size:()I
            if_icmplt 20
        end local 3 // int i
        24: .line 90
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.change_scroll_region:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.rows:I
            iconst_1
            isub
            aload 1 /* lines */
            invokeinterface java.util.List.size:()I
            isub
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        25: .line 91
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            getstatic jdk.internal.org.jline.utils.InfoCmp$Capability.restore_cursor:Ljdk/internal/org/jline/utils/InfoCmp$Capability;
            iconst_0
            anewarray java.lang.Object
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.puts:(Ljdk/internal/org/jline/utils/InfoCmp$Capability;[Ljava/lang/Object;)Z
            pop
        26: .line 92
            aload 0 /* this */
            getfield jdk.internal.org.jline.utils.Status.terminal:Ljdk/internal/org/jline/terminal/impl/AbstractTerminal;
            invokevirtual jdk.internal.org.jline.terminal.impl.AbstractTerminal.flush:()V
        27: .line 93
            aload 0 /* this */
            new java.util.ArrayList
            dup
            aload 1 /* lines */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            putfield jdk.internal.org.jline.utils.Status.oldLines:Ljava/util/List;
        28: .line 94
            aload 0 /* this */
            iconst_0
            putfield jdk.internal.org.jline.utils.Status.force:Z
        29: .line 95
            return
        end local 2 // int nb
        end local 1 // java.util.List lines
        end local 0 // jdk.internal.org.jline.utils.Status this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   30     0   this  Ljdk/internal/org/jline/utils/Status;
            0   30     1  lines  Ljava/util/List<Ljdk/internal/org/jline/utils/AttributedString;>;
            5   30     2     nb  I
            7   11     3      i  I
           12   16     3      i  I
           19   24     3      i  I
    Signature: (Ljava/util/List<Ljdk/internal/org/jline/utils/AttributedString;>;)V
    MethodParameters:
       Name  Flags
      lines  
}
SourceFile: "Status.java"
InnerClasses:
  public final Capability = jdk.internal.org.jline.utils.InfoCmp$Capability of jdk.internal.org.jline.utils.InfoCmp