public class org.jruby.util.IOChannel$IOReadableWritableByteChannel extends org.jruby.util.IOChannel implements java.nio.channels.ReadableByteChannel, java.nio.channels.WritableByteChannel
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.util.IOChannel$IOReadableWritableByteChannel
  super_class: org.jruby.util.IOChannel
{
  private final org.jruby.runtime.CallSite write;
    descriptor: Lorg/jruby/runtime/CallSite;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.jruby.runtime.CallSite read;
    descriptor: Lorg/jruby/runtime/CallSite;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
        start local 1 // org.jruby.runtime.builtin.IRubyObject io
         0: .line 174
            aload 0 /* this */
            aload 1 /* io */
            invokespecial org.jruby.util.IOChannel.<init>:(Lorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 175
            aload 0 /* this */
            aload 0 /* this */
            ldc "read"
            invokevirtual org.jruby.util.IOChannel$IOReadableWritableByteChannel.initReadSite:(Ljava/lang/String;)Lorg/jruby/runtime/CallSite;
            putfield org.jruby.util.IOChannel$IOReadableWritableByteChannel.read:Lorg/jruby/runtime/CallSite;
         2: .line 176
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.jruby.util.IOChannel$IOReadableWritableByteChannel.initWriteSite:()Lorg/jruby/runtime/CallSite;
            putfield org.jruby.util.IOChannel$IOReadableWritableByteChannel.write:Lorg/jruby/runtime/CallSite;
         3: .line 177
            return
        end local 1 // org.jruby.runtime.builtin.IRubyObject io
        end local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/jruby/util/IOChannel$IOReadableWritableByteChannel;
            0    4     1    io  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      io    final

  public int read(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
        start local 1 // java.nio.ByteBuffer dst
         0: .line 180
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.util.IOChannel$IOReadableWritableByteChannel.read:Lorg/jruby/runtime/CallSite;
            aload 1 /* dst */
            invokevirtual org.jruby.util.IOChannel$IOReadableWritableByteChannel.read:(Lorg/jruby/runtime/CallSite;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 1 // java.nio.ByteBuffer dst
        end local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/util/IOChannel$IOReadableWritableByteChannel;
            0    1     1   dst  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dst   

  public int write(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
        start local 1 // java.nio.ByteBuffer src
         0: .line 184
            aload 0 /* this */
            aload 0 /* this */
            getfield org.jruby.util.IOChannel$IOReadableWritableByteChannel.write:Lorg/jruby/runtime/CallSite;
            aload 1 /* src */
            invokevirtual org.jruby.util.IOChannel$IOReadableWritableByteChannel.write:(Lorg/jruby/runtime/CallSite;Ljava/nio/ByteBuffer;)I
            ireturn
        end local 1 // java.nio.ByteBuffer src
        end local 0 // org.jruby.util.IOChannel$IOReadableWritableByteChannel this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/util/IOChannel$IOReadableWritableByteChannel;
            0    1     1   src  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      src   
}
SourceFile: "IOChannel.java"
NestHost: org.jruby.util.IOChannel
InnerClasses:
  public IOReadableWritableByteChannel = org.jruby.util.IOChannel$IOReadableWritableByteChannel of org.jruby.util.IOChannel