class jdk.internal.jshell.tool.ReloadIOContext extends jdk.internal.jshell.tool.NonInteractiveIOContext
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.internal.jshell.tool.ReloadIOContext
  super_class: jdk.internal.jshell.tool.NonInteractiveIOContext
{
  private final java.util.Iterator<java.lang.String> it;
    descriptor: Ljava/util/Iterator;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Iterator<Ljava/lang/String;>;

  private final java.io.PrintStream echoStream;
    descriptor: Ljava/io/PrintStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(java.lang.Iterable<java.lang.String>, java.io.PrintStream);
    descriptor: (Ljava/lang/Iterable;Ljava/io/PrintStream;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // jdk.internal.jshell.tool.ReloadIOContext this
        start local 1 // java.lang.Iterable history
        start local 2 // java.io.PrintStream echoStream
         0: .line 3429
            aload 0 /* this */
            invokespecial jdk.internal.jshell.tool.NonInteractiveIOContext.<init>:()V
         1: .line 3430
            aload 0 /* this */
            aload 1 /* history */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            putfield jdk.internal.jshell.tool.ReloadIOContext.it:Ljava/util/Iterator;
         2: .line 3431
            aload 0 /* this */
            aload 2 /* echoStream */
            putfield jdk.internal.jshell.tool.ReloadIOContext.echoStream:Ljava/io/PrintStream;
         3: .line 3432
            return
        end local 2 // java.io.PrintStream echoStream
        end local 1 // java.lang.Iterable history
        end local 0 // jdk.internal.jshell.tool.ReloadIOContext this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Ljdk/internal/jshell/tool/ReloadIOContext;
            0    4     1     history  Ljava/lang/Iterable<Ljava/lang/String;>;
            0    4     2  echoStream  Ljava/io/PrintStream;
    Signature: (Ljava/lang/Iterable<Ljava/lang/String;>;Ljava/io/PrintStream;)V
    MethodParameters:
            Name  Flags
      history     
      echoStream  

  public java.lang.String readLine(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=3
        start local 0 // jdk.internal.jshell.tool.ReloadIOContext this
        start local 1 // java.lang.String prompt
        start local 2 // java.lang.String prefix
         0: .line 3436
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.ReloadIOContext.it:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.hasNext:()Z
            ifeq 2
         1: .line 3437
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.ReloadIOContext.it:Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            goto 3
         2: .line 3438
      StackMap locals:
      StackMap stack:
            aconst_null
         3: .line 3436
      StackMap locals:
      StackMap stack: java.lang.String
            astore 3 /* s */
        start local 3 // java.lang.String s
         4: .line 3439
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.ReloadIOContext.echoStream:Ljava/io/PrintStream;
            ifnull 8
            aload 3 /* s */
            ifnull 8
         5: .line 3440
            ldc "-: "
            astore 4 /* p */
        start local 4 // java.lang.String p
         6: .line 3441
            ldc "\n   "
            astore 5 /* p2 */
        start local 5 // java.lang.String p2
         7: .line 3442
            aload 0 /* this */
            getfield jdk.internal.jshell.tool.ReloadIOContext.echoStream:Ljava/io/PrintStream;
            ldc "%s%s\n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* p */
            aastore
            dup
            iconst_1
            aload 3 /* s */
            ldc "\n"
            aload 5 /* p2 */
            invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
            aastore
            invokevirtual java.io.PrintStream.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream;
            pop
        end local 5 // java.lang.String p2
        end local 4 // java.lang.String p
         8: .line 3444
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* s */
            areturn
        end local 3 // java.lang.String s
        end local 2 // java.lang.String prefix
        end local 1 // java.lang.String prompt
        end local 0 // jdk.internal.jshell.tool.ReloadIOContext this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljdk/internal/jshell/tool/ReloadIOContext;
            0    9     1  prompt  Ljava/lang/String;
            0    9     2  prefix  Ljava/lang/String;
            4    9     3       s  Ljava/lang/String;
            6    8     4       p  Ljava/lang/String;
            7    8     5      p2  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      prompt  
      prefix  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.ReloadIOContext this
         0: .line 3449
            return
        end local 0 // jdk.internal.jshell.tool.ReloadIOContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/ReloadIOContext;

  public int readUserInput();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.jshell.tool.ReloadIOContext this
         0: .line 3453
            iconst_m1
            ireturn
        end local 0 // jdk.internal.jshell.tool.ReloadIOContext this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/jshell/tool/ReloadIOContext;
}
SourceFile: "JShellTool.java"