public final class org.jruby.util.io.BlockingIO$Condition
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.jruby.util.io.BlockingIO$Condition
  super_class: java.lang.Object
{
  private final org.jruby.util.io.BlockingIO$IOChannel channel;
    descriptor: Lorg/jruby/util/io/BlockingIO$IOChannel;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(org.jruby.util.io.BlockingIO$IOChannel);
    descriptor: (Lorg/jruby/util/io/BlockingIO$IOChannel;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.util.io.BlockingIO$Condition this
        start local 1 // org.jruby.util.io.BlockingIO$IOChannel channel
         0: .line 57
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 58
            aload 0 /* this */
            aload 1 /* channel */
            putfield org.jruby.util.io.BlockingIO$Condition.channel:Lorg/jruby/util/io/BlockingIO$IOChannel;
         2: .line 59
            return
        end local 1 // org.jruby.util.io.BlockingIO$IOChannel channel
        end local 0 // org.jruby.util.io.BlockingIO$Condition this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/util/io/BlockingIO$Condition;
            0    3     1  channel  Lorg/jruby/util/io/BlockingIO$IOChannel;
    MethodParameters:
         Name  Flags
      channel  

  public void cancel();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.util.io.BlockingIO$Condition this
         0: .line 61
            aload 0 /* this */
            getfield org.jruby.util.io.BlockingIO$Condition.channel:Lorg/jruby/util/io/BlockingIO$IOChannel;
            iconst_0
            invokevirtual org.jruby.util.io.BlockingIO$IOChannel.wakeup:(Z)V
         1: .line 62
            return
        end local 0 // org.jruby.util.io.BlockingIO$Condition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/util/io/BlockingIO$Condition;

  public void interrupt();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.util.io.BlockingIO$Condition this
         0: .line 64
            aload 0 /* this */
            getfield org.jruby.util.io.BlockingIO$Condition.channel:Lorg/jruby/util/io/BlockingIO$IOChannel;
            invokevirtual org.jruby.util.io.BlockingIO$IOChannel.interrupt:()V
         1: .line 65
            return
        end local 0 // org.jruby.util.io.BlockingIO$Condition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/jruby/util/io/BlockingIO$Condition;

  public boolean await();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.util.io.BlockingIO$Condition this
         0: .line 67
            aload 0 /* this */
            getfield org.jruby.util.io.BlockingIO$Condition.channel:Lorg/jruby/util/io/BlockingIO$IOChannel;
            invokevirtual org.jruby.util.io.BlockingIO$IOChannel.await:()Z
            ireturn
        end local 0 // org.jruby.util.io.BlockingIO$Condition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/util/io/BlockingIO$Condition;
    Exceptions:
      throws java.lang.InterruptedException

  public boolean await(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.jruby.util.io.BlockingIO$Condition this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit unit
         0: .line 70
            aload 0 /* this */
            getfield org.jruby.util.io.BlockingIO$Condition.channel:Lorg/jruby/util/io/BlockingIO$IOChannel;
            lload 1 /* timeout */
            aload 3 /* unit */
            invokevirtual org.jruby.util.io.BlockingIO$IOChannel.await:(JLjava/util/concurrent/TimeUnit;)Z
            ireturn
        end local 3 // java.util.concurrent.TimeUnit unit
        end local 1 // long timeout
        end local 0 // org.jruby.util.io.BlockingIO$Condition this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/util/io/BlockingIO$Condition;
            0    1     1  timeout  J
            0    1     3     unit  Ljava/util/concurrent/TimeUnit;
    Exceptions:
      throws java.lang.InterruptedException
    MethodParameters:
         Name  Flags
      timeout  
      unit     
}
SourceFile: "BlockingIO.java"
NestHost: org.jruby.util.io.BlockingIO
InnerClasses:
  public final Condition = org.jruby.util.io.BlockingIO$Condition of org.jruby.util.io.BlockingIO
  final IOChannel = org.jruby.util.io.BlockingIO$IOChannel of org.jruby.util.io.BlockingIO