public abstract class org.jruby.ext.ffi.AbstractMemory extends org.jruby.ext.ffi.MemoryObject
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jruby.ext.ffi.AbstractMemory
  super_class: org.jruby.ext.ffi.MemoryObject
{
  public static final java.lang.String ABSTRACT_MEMORY_RUBY_CLASS;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "AbstractMemory"

  protected long size;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

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

  public static org.jruby.RubyClass createAbstractMemoryClass(org.jruby.Ruby, org.jruby.RubyModule);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyModule;)Lorg/jruby/RubyClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.Ruby runtime
        start local 1 // org.jruby.RubyModule module
         0: .line 66
            aload 1 /* module */
            ldc "AbstractMemory"
         1: .line 67
            aload 0 /* runtime */
            invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
         2: .line 68
            getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
         3: .line 66
            invokevirtual org.jruby.RubyModule.defineClassUnder:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
            astore 2 /* result */
        start local 2 // org.jruby.RubyClass result
         4: .line 70
            aload 2 /* result */
            ldc Lorg/jruby/ext/ffi/AbstractMemory;
            invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
         5: .line 71
            aload 2 /* result */
            ldc Lorg/jruby/ext/ffi/AbstractMemory;
            invokevirtual org.jruby.RubyClass.defineAnnotatedConstants:(Ljava/lang/Class;)V
         6: .line 73
            aload 2 /* result */
            areturn
        end local 2 // org.jruby.RubyClass result
        end local 1 // org.jruby.RubyModule module
        end local 0 // org.jruby.Ruby runtime
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0  runtime  Lorg/jruby/Ruby;
            0    7     1   module  Lorg/jruby/RubyModule;
            4    7     2   result  Lorg/jruby/RubyClass;
    MethodParameters:
         Name  Flags
      runtime  
      module   

  protected static final int calculateTypeSize(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.jruby.runtime.ThreadContext context
        start local 1 // org.jruby.runtime.builtin.IRubyObject sizeArg
         0: .line 77
            aload 1 /* sizeArg */
            instanceof org.jruby.RubyFixnum
            ifeq 2
         1: .line 78
            aload 1 /* sizeArg */
            checkcast org.jruby.RubyFixnum
            invokevirtual org.jruby.RubyFixnum.getLongValue:()J
            l2i
            ireturn
         2: .line 80
      StackMap locals:
      StackMap stack:
            aload 1 /* sizeArg */
            instanceof org.jruby.RubySymbol
            ifeq 4
         3: .line 81
            aload 0 /* context */
            aload 1 /* sizeArg */
            checkcast org.jruby.RubySymbol
            invokestatic org.jruby.ext.ffi.TypeSizeMapper.getTypeSize:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubySymbol;)I
            ireturn
         4: .line 83
      StackMap locals:
      StackMap stack:
            aload 1 /* sizeArg */
            instanceof org.jruby.ext.ffi.Type
            ifeq 6
         5: .line 84
            aload 1 /* sizeArg */
            checkcast org.jruby.ext.ffi.Type
            invokevirtual org.jruby.ext.ffi.Type.getNativeSize:()I
            ireturn
         6: .line 88
      StackMap locals:
      StackMap stack:
            aload 1 /* sizeArg */
            instanceof org.jruby.RubyClass
            ifeq 8
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* sizeArg */
            checkcast org.jruby.RubyClass
            invokestatic org.jruby.ext.ffi.Struct.isStruct:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)Z
            ifeq 8
         7: .line 89
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* sizeArg */
            invokestatic org.jruby.ext.ffi.Struct.getStructSize:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)I
            ireturn
         8: .line 91
      StackMap locals:
      StackMap stack:
            aload 1 /* sizeArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            ldc "size"
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            dup
            astore 2 /* sizeMethod */
        start local 2 // org.jruby.internal.runtime.methods.DynamicMethod sizeMethod
         9: invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifne 11
        10: .line 92
            aload 2 /* sizeMethod */
            aload 0 /* context */
            aload 1 /* sizeArg */
            aload 1 /* sizeArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            ldc "size"
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic org.jruby.RubyFixnum.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            l2i
            ireturn
        11: .line 95
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 0 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Invalid size argument"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 2 // org.jruby.internal.runtime.methods.DynamicMethod sizeMethod
        end local 1 // org.jruby.runtime.builtin.IRubyObject sizeArg
        end local 0 // org.jruby.runtime.ThreadContext context
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0     context  Lorg/jruby/runtime/ThreadContext;
            0   12     1     sizeArg  Lorg/jruby/runtime/builtin/IRubyObject;
            9   12     2  sizeMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    MethodParameters:
         Name  Flags
      context  
      sizeArg  

  protected static final org.jruby.RubyArray checkArray(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 101
            aload 0 /* obj */
            instanceof org.jruby.RubyArray
            ifne 2
         1: .line 102
            aload 0 /* obj */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            ldc "Array expected"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 104
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            checkcast org.jruby.RubyArray
            areturn
        end local 0 // org.jruby.runtime.builtin.IRubyObject obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   obj  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
      Name  Flags
      obj   

  private static int checkArrayLength(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jruby.runtime.builtin.IRubyObject val
         0: .line 108
            aload 0 /* val */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 1 /* i */
        start local 1 // int i
         1: .line 109
            iload 1 /* i */
            ifge 3
         2: .line 110
            aload 0 /* val */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getRuntime:()Lorg/jruby/Ruby;
            ldc "negative array length"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         3: .line 113
      StackMap locals: int
      StackMap stack:
            iload 1 /* i */
            ireturn
        end local 1 // int i
        end local 0 // org.jruby.runtime.builtin.IRubyObject val
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   val  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     1     i  I
    MethodParameters:
      Name  Flags
      val   

  protected void <init>(org.jruby.Ruby, org.jruby.RubyClass, org.jruby.ext.ffi.MemoryIO, long);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/ext/ffi/MemoryIO;J)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
        start local 3 // org.jruby.ext.ffi.MemoryIO io
        start local 4 // long size
         0: .line 117
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            aload 3 /* io */
            lload 4 /* size */
            iconst_1
            invokespecial org.jruby.ext.ffi.AbstractMemory.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/ext/ffi/MemoryIO;JI)V
         1: .line 118
            return
        end local 4 // long size
        end local 3 // org.jruby.ext.ffi.MemoryIO io
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  runtime  Lorg/jruby/Ruby;
            0    2     2    klass  Lorg/jruby/RubyClass;
            0    2     3       io  Lorg/jruby/ext/ffi/MemoryIO;
            0    2     4     size  J
    MethodParameters:
         Name  Flags
      runtime  
      klass    
      io       
      size     

  protected void <init>(org.jruby.Ruby, org.jruby.RubyClass, org.jruby.ext.ffi.MemoryIO, long, int);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;Lorg/jruby/ext/ffi/MemoryIO;JI)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.Ruby runtime
        start local 2 // org.jruby.RubyClass klass
        start local 3 // org.jruby.ext.ffi.MemoryIO io
        start local 4 // long size
        start local 6 // int typeSize
         0: .line 121
            aload 0 /* this */
            aload 1 /* runtime */
            aload 2 /* klass */
            invokespecial org.jruby.ext.ffi.MemoryObject.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
         1: .line 122
            aload 0 /* this */
            aload 3 /* io */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.setMemoryIO:(Lorg/jruby/ext/ffi/MemoryIO;)Lorg/jruby/ext/ffi/MemoryIO;
            pop
         2: .line 123
            aload 0 /* this */
            lload 4 /* size */
            putfield org.jruby.ext.ffi.AbstractMemory.size:J
         3: .line 124
            aload 0 /* this */
            iload 6 /* typeSize */
            putfield org.jruby.ext.ffi.AbstractMemory.typeSize:I
         4: .line 125
            return
        end local 6 // int typeSize
        end local 4 // long size
        end local 3 // org.jruby.ext.ffi.MemoryIO io
        end local 2 // org.jruby.RubyClass klass
        end local 1 // org.jruby.Ruby runtime
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    5     1   runtime  Lorg/jruby/Ruby;
            0    5     2     klass  Lorg/jruby/RubyClass;
            0    5     3        io  Lorg/jruby/ext/ffi/MemoryIO;
            0    5     4      size  J
            0    5     6  typeSize  I
    MethodParameters:
          Name  Flags
      runtime   
      klass     
      io        
      size      
      typeSize  

  protected org.jruby.ext.ffi.MemoryIO allocateMemoryIO();
    descriptor: ()Lorg/jruby/ext/ffi/MemoryIO;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
         0: .line 129
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getRuntime:()Lorg/jruby/Ruby;
            ldc "allocateMemoryIO should not be called"
            invokevirtual org.jruby.Ruby.newRuntimeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ffi/AbstractMemory;

  protected final long getOffset(org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/builtin/IRubyObject;)J
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 140
            aload 1 /* offset */
            invokestatic org.jruby.ext.ffi.Util.longValue:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lreturn
        end local 1 // org.jruby.runtime.builtin.IRubyObject offset
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  offset  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
        Name  Flags
      offset  

  public final long getSize();
    descriptor: ()J
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
         0: .line 149
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            lreturn
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ffi/AbstractMemory;

  public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 159
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.hashCode:()I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"hash"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject to_s(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 164
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "AbstractMemory[size="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_s"}, optional = 1)
    MethodParameters:
         Name  Flags
      context  
      args     

  public final org.jruby.runtime.builtin.IRubyObject aref(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject indexArg
         0: .line 169
            aload 2 /* indexArg */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 3 /* index */
        start local 3 // int index
         1: .line 170
            iload 3 /* index */
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.typeSize:I
            imul
            istore 4 /* offset */
        start local 4 // int offset
         2: .line 171
            iload 4 /* offset */
            i2l
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            lcmp
            iflt 4
         3: .line 172
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Index %d out of range"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newIndexError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 174
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 4 /* offset */
            i2l
            invokevirtual org.jruby.ext.ffi.AbstractMemory.slice:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/AbstractMemory;
            areturn
        end local 4 // int offset
        end local 3 // int index
        end local 2 // org.jruby.runtime.builtin.IRubyObject indexArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    5     1   context  Lorg/jruby/runtime/ThreadContext;
            0    5     2  indexArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     3     index  I
            2    5     4    offset  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"[]"})
    MethodParameters:
          Name  Flags
      context   
      indexArg  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // java.lang.Object obj
         0: .line 186
            aload 1 /* obj */
            instanceof org.jruby.ext.ffi.AbstractMemory
            ifne 2
         1: .line 187
            iconst_0
            ireturn
         2: .line 189
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            checkcast org.jruby.ext.ffi.AbstractMemory
            astore 2 /* other */
        start local 2 // org.jruby.ext.ffi.AbstractMemory other
         3: .line 190
            aload 2 /* other */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 2 // org.jruby.ext.ffi.AbstractMemory other
        end local 1 // java.lang.Object obj
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1    obj  Ljava/lang/Object;
            3    4     2  other  Lorg/jruby/ext/ffi/AbstractMemory;
    MethodParameters:
      Name  Flags
      obj   

  public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject obj
         0: .line 196
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* obj */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.equals:(Ljava/lang/Object;)Z
            invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject obj
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      obj  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"=="}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      obj      

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
         0: .line 206
            bipush 67
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            invokevirtual java.lang.Object.hashCode:()I
            imul
            ireturn
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ffi/AbstractMemory;

  public org.jruby.runtime.builtin.IRubyObject clear(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 214
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            iconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.setMemory:(JJB)V
         1: .line 215
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"clear"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject total(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 225
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            invokestatic org.jruby.RubyFixnum.newFixnum:(Lorg/jruby/Ruby;J)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"total", "size", "length"})
    MethodParameters:
         Name  Flags
      context  

  public final org.jruby.runtime.builtin.IRubyObject type_size(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 236
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.typeSize:I
            invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"type_size"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject write_char(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 247
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)B
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 249
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_char"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 260
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)B
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 262
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int8", "put_char"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 274
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.int8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)B
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 276
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int8", "put_char"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_char(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 286
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newSigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_char"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int8(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 296
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newSigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int8", "get_char"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 307
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newSigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int8", "get_char"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_uchar(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 318
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            i2b
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 319
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_uchar"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 330
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            i2b
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 331
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint8", "put_uchar"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 343
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint8Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            i2b
            invokevirtual org.jruby.ext.ffi.MemoryIO.putByte:(JB)V
         1: .line 344
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint8", "put_uchar"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_uchar(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 354
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newUnsigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_uchar"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint8(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 364
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newUnsigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint8", "get_uchar"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 375
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getByte:(J)B
            invokestatic org.jruby.ext.ffi.Util.newUnsigned8:(Lorg/jruby/Ruby;B)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint8", "get_uchar"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_short(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 386
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 388
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_short", "write_int16"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 399
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 401
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int16", "put_short"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 413
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.int16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)S
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 415
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int16", "put_short"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_short(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 425
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newSigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_short"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int16(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 435
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newSigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int16", "get_short"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 446
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newSigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int16", "get_short"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_ushort(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 457
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            i2s
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 459
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_ushort"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 470
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            i2s
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 472
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint16", "put_ushort"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 484
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint16Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            i2s
            invokevirtual org.jruby.ext.ffi.MemoryIO.putShort:(JS)V
         1: .line 486
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint16", "put_ushort"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_ushort(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 496
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newUnsigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_ushort"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint16(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 506
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newUnsigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint16", "get_ushort"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 517
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getShort:(J)S
            invokestatic org.jruby.ext.ffi.Util.newUnsigned16:(Lorg/jruby/Ruby;S)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint16", "get_ushort"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_int(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 528
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 530
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_int", "write_int32"})
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 541
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 543
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int32", "put_int"})
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 555
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 557
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int32", "put_int"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_int(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 567
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newSigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_int"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int32(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 577
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newSigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int32", "get_int"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 588
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newSigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int32", "get_int"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_uint(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 599
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            l2i
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 601
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_uint"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 612
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            l2i
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 614
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint32", "put_uint"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 626
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            l2i
            invokevirtual org.jruby.ext.ffi.MemoryIO.putInt:(JI)V
         1: .line 628
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint32", "put_uint"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_uint(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 638
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newUnsigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_uint"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint32(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 648
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newUnsigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint32", "get_uint"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 659
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getInt:(J)I
            invokestatic org.jruby.ext.ffi.Util.newUnsigned32:(Lorg/jruby/Ruby;I)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint32", "get_uint"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_long_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 670
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 672
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_long_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 683
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.int64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 685
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int64", "put_long_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 697
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.int64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 699
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_int64", "put_long_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_long_long(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 709
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newSigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_long_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int64(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 719
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newSigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int64", "get_long_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 730
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newSigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_int64", "get_long_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_ulong_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 741
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 743
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_ulong_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 754
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 756
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint64", "put_ulong_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 768
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.uint64Value:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.putLong:(JJ)V
         1: .line 770
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_uint64", "put_ulong_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_ulong_long(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 780
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newUnsigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_ulong_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint64(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 790
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newUnsigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint64", "get_ulong_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 801
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getLong:(J)J
            invokestatic org.jruby.ext.ffi.Util.newUnsigned64:(Lorg/jruby/Ruby;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_uint64", "get_ulong_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 813
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_long:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 824
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 825
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 826
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 824
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 838
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 839
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 840
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 838
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_long(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 850
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_long:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_long(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 860
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 861
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_int32:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_int64:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 860
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_long"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 872
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 873
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 874
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 872
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject put_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 885
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 886
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 887
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 885
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_ulong", "write_ulong"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 899
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 900
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 901
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 899
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_ulong"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_ulong(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 912
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_ulong:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_ulong"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_ulong(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 922
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 923
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_uint32:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_uint64:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 922
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_ulong", "read_ulong"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 934
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 935
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 936
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 934
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_ulong"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_float(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 947
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.floatValue:(Lorg/jruby/runtime/builtin/IRubyObject;)F
            invokevirtual org.jruby.ext.ffi.MemoryIO.putFloat:(JF)V
         1: .line 949
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_float"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_float32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 960
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.floatValue:(Lorg/jruby/runtime/builtin/IRubyObject;)F
            invokevirtual org.jruby.ext.ffi.MemoryIO.putFloat:(JF)V
         1: .line 962
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_float32", "put_float"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_float32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 974
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.floatValue:(Lorg/jruby/runtime/builtin/IRubyObject;)F
            invokevirtual org.jruby.ext.ffi.MemoryIO.putFloat:(JF)V
         1: .line 976
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_float32", "put_float"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_float(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 986
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getFloat:(J)F
            f2d
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_float"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_float32(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 996
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getFloat:(J)F
            f2d
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_float32", "get_float"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_float32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 1007
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getFloat:(J)F
            f2d
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_float32", "get_float"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject write_double(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1018
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.doubleValue:(Lorg/jruby/runtime/builtin/IRubyObject;)D
            invokevirtual org.jruby.ext.ffi.MemoryIO.putDouble:(JD)V
         1: .line 1020
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_double"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1031
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* value */
            invokestatic org.jruby.ext.ffi.Util.doubleValue:(Lorg/jruby/runtime/builtin/IRubyObject;)D
            invokevirtual org.jruby.ext.ffi.MemoryIO.putDouble:(JD)V
         1: .line 1033
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_float64", "put_double"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1045
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokestatic org.jruby.ext.ffi.Util.doubleValue:(Lorg/jruby/runtime/builtin/IRubyObject;)D
            invokevirtual org.jruby.ext.ffi.MemoryIO.putDouble:(JD)V
         1: .line 1047
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_float64", "put_double"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject read_double(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1057
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getDouble:(J)D
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_double"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_float64(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1067
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.getDouble:(J)D
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_float64", "get_double"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 1078
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.MemoryIO.getDouble:(J)D
            invokestatic org.jruby.RubyFloat.newFloat:(Lorg/jruby/Ruby;D)Lorg/jruby/RubyFloat;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_float64", "get_double"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  public org.jruby.runtime.builtin.IRubyObject get_array_of_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1090
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_int8", "get_array_of_char"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1103
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1105
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_int8", "put_array_of_char"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1117
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_uint8", "get_array_of_uchar"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1130
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1132
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_uint8", "put_array_of_uchar"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1144
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_int16", "get_array_of_short"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1157
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1159
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_int16", "put_array_of_short"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1171
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_uint16", "get_array_of_ushort"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1184
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1186
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_uint16", "put_array_of_ushort"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1198
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_int32", "get_array_of_int"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1210
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1212
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_int32", "put_array_of_int"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1224
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_uint32", "get_array_of_uint"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1236
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1238
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_uint32", "put_array_of_uint"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1250
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1251
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1250
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arr
         0: .line 1264
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1265
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* arr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_array_of_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* arr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_array_of_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1264
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arr
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3      arr  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      arr      

  public org.jruby.runtime.builtin.IRubyObject get_array_of_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1278
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1279
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1278
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_ulong"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arr
         0: .line 1292
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1293
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* arr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_array_of_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1294
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* offset */
            aload 3 /* arr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_array_of_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1292
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arr
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3      arr  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_ulong"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      arr      

  public org.jruby.runtime.builtin.IRubyObject get_array_of_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1306
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_int64", "get_array_of_long_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1319
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1321
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_int64", "put_array_of_long_long"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1333
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_uint64", "get_array_of_ulong_long"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1346
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1348
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_uint64", "put_array_of_ulong_long"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_float(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1360
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfFloat32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_float32", "get_array_of_float"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_float(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1373
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfFloat32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1375
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_float32", "put_array_of_float"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1387
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfFloat64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_float64", "get_array_of_double"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1399
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* arrParam */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfFloat64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1401
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1   context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_float64", "put_array_of_double"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject read_array_of_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1412
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_int8", "read_array_of_char"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_int8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1424
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1426
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_int8", "write_array_of_char"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1437
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_uint8", "read_array_of_uchar"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_uint8(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1450
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned8:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1452
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_uint8", "write_array_of_uchar"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1463
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_int16", "read_array_of_short"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_int16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1475
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1477
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_int16", "write_array_of_short"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1488
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_uint16", "read_array_of_ushort"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_uint16(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1500
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned16:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1502
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_uint16", "write_array_of_ushort"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1514
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_int32", "read_array_of_int"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_int32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1526
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1528
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_int32", "write_array_of_int"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1539
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_uint32", "read_array_of_uint"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_uint32(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1551
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1553
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_uint32", "write_array_of_uint"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1564
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfSigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_int64", "read_array_of_long_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_int64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1576
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfSigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1578
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_int64", "write_array_of_long_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1589
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfUnsigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_uint64", "read_array_of_ulong_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_uint64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1601
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfUnsigned64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1603
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_uint64", "write_array_of_ulong_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1614
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1615
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.read_array_of_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1616
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.read_array_of_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1614
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_long(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1627
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1628
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ary */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.write_array_of_int32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1629
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ary */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.write_array_of_int64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1627
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_long"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1640
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1641
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.read_array_of_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1642
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.read_array_of_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1640
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_ulong"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_ulong(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1653
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 2
         1: .line 1654
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ary */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.write_array_of_uint32:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 3
         2: .line 1655
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ary */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.write_array_of_uint64:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1653
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_ulong"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_float(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1666
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfFloat32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_float32", "read_array_of_float"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_float(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1678
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfFloat32:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1680
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_float32", "write_array_of_float"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1691
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getArrayOfFloat64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_float64", "read_array_of_double"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_float64(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject ary
         0: .line 1702
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* ary */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArray:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
            invokestatic org.jruby.ext.ffi.MemoryUtil.putArrayOfFloat64:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/RubyArray;)V
         1: .line 1704
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject ary
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ary  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_float64", "write_array_of_double"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      ary      

  public org.jruby.runtime.builtin.IRubyObject read_array_of_type(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1709
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getFFI:()Lorg/jruby/ext/ffi/FFI;
            invokevirtual org.jruby.ext.ffi.FFI.getTypeResolver:()Lorg/jruby/ext/ffi/TypeResolver;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* typeArg */
            invokevirtual org.jruby.ext.ffi.TypeResolver.findType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/ffi/Type;
            astore 4 /* type */
        start local 4 // org.jruby.ext.ffi.Type type
         1: .line 1710
            aload 4 /* type */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/Type;)Lorg/jruby/ext/ffi/MemoryOp;
            astore 5 /* op */
        start local 5 // org.jruby.ext.ffi.MemoryOp op
         2: .line 1711
            aload 5 /* op */
            ifnonnull 4
         3: .line 1712
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "cannot get memory reader for type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 1715
      StackMap locals: org.jruby.ext.ffi.Type org.jruby.ext.ffi.MemoryOp
      StackMap stack:
            aload 3 /* lenArg */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArrayLength:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 6 /* len */
        start local 6 // int len
         5: .line 1716
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 6 /* len */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 7 /* arr */
        start local 7 // org.jruby.RubyArray arr
         6: .line 1718
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         7: iconst_0
            istore 9 /* off */
        start local 9 // int off
         8: goto 11
         9: .line 1719
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.ext.ffi.Type org.jruby.ext.ffi.MemoryOp int org.jruby.RubyArray int int
      StackMap stack:
            aload 7 /* arr */
            aload 5 /* op */
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            iload 9 /* off */
            i2l
            invokevirtual org.jruby.ext.ffi.MemoryOp.get:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.add:(Ljava/lang/Object;)Z
            pop
        10: .line 1718
            iinc 8 /* i */ 1
            iload 9 /* off */
            aload 4 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            iadd
            istore 9 /* off */
      StackMap locals:
      StackMap stack:
        11: iload 8 /* i */
            iload 6 /* len */
            if_icmplt 9
        end local 9 // int off
        end local 8 // int i
        12: .line 1722
            aload 7 /* arr */
            areturn
        end local 7 // org.jruby.RubyArray arr
        end local 6 // int len
        end local 5 // org.jruby.ext.ffi.MemoryOp op
        end local 4 // org.jruby.ext.ffi.Type type
        end local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   13     1  context  Lorg/jruby/runtime/ThreadContext;
            0   13     2  typeArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   13     3   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     4     type  Lorg/jruby/ext/ffi/Type;
            2   13     5       op  Lorg/jruby/ext/ffi/MemoryOp;
            5   13     6      len  I
            6   13     7      arr  Lorg/jruby/RubyArray;
            7   12     8        i  I
            8   12     9      off  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_type"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      typeArg  
      lenArg   

  public org.jruby.runtime.builtin.IRubyObject read_array_of_type(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=11, args_size=5
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject reader
        start local 4 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1727
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getFFI:()Lorg/jruby/ext/ffi/FFI;
            invokevirtual org.jruby.ext.ffi.FFI.getTypeResolver:()Lorg/jruby/ext/ffi/TypeResolver;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* typeArg */
            invokevirtual org.jruby.ext.ffi.TypeResolver.findType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/ffi/Type;
            astore 5 /* type */
        start local 5 // org.jruby.ext.ffi.Type type
         1: .line 1728
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMetaClass:()Lorg/jruby/RubyClass;
            aload 3 /* reader */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 6 /* method */
        start local 6 // org.jruby.internal.runtime.methods.DynamicMethod method
         2: .line 1730
            aload 4 /* lenArg */
            invokestatic org.jruby.ext.ffi.AbstractMemory.checkArrayLength:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 7 /* len */
        start local 7 // int len
         3: .line 1731
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 7 /* len */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 8 /* arr */
        start local 8 // org.jruby.RubyArray arr
         4: .line 1733
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         5: iconst_0
            istore 10 /* off */
        start local 10 // int off
         6: goto 9
         7: .line 1734
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.ext.ffi.Type org.jruby.internal.runtime.methods.DynamicMethod int org.jruby.RubyArray int int
      StackMap stack:
            aload 8 /* arr */
            aload 6 /* method */
            aload 1 /* context */
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 10 /* off */
            i2l
            aload 5 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            i2l
            invokevirtual org.jruby.ext.ffi.AbstractMemory.slice:(Lorg/jruby/Ruby;JJ)Lorg/jruby/ext/ffi/AbstractMemory;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMetaClass:()Lorg/jruby/RubyClass;
            aload 3 /* reader */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.add:(Ljava/lang/Object;)Z
            pop
         8: .line 1733
            iinc 9 /* i */ 1
            iload 10 /* off */
            aload 5 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            iadd
            istore 10 /* off */
      StackMap locals:
      StackMap stack:
         9: iload 9 /* i */
            iload 7 /* len */
            if_icmplt 7
        end local 10 // int off
        end local 9 // int i
        10: .line 1737
            aload 8 /* arr */
            areturn
        end local 8 // org.jruby.RubyArray arr
        end local 7 // int len
        end local 6 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 5 // org.jruby.ext.ffi.Type type
        end local 4 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 3 // org.jruby.runtime.builtin.IRubyObject reader
        end local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2  typeArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3   reader  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     4   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1   11     5     type  Lorg/jruby/ext/ffi/Type;
            2   11     6   method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            3   11     7      len  I
            4   11     8      arr  Lorg/jruby/RubyArray;
            5   10     9        i  I
            6   10    10      off  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_type"}, required = 3)
    MethodParameters:
         Name  Flags
      context  
      typeArg  
      reader   
      lenArg   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_type(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=10, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject aryArg
         0: .line 1742
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getFFI:()Lorg/jruby/ext/ffi/FFI;
            invokevirtual org.jruby.ext.ffi.FFI.getTypeResolver:()Lorg/jruby/ext/ffi/TypeResolver;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* typeArg */
            invokevirtual org.jruby.ext.ffi.TypeResolver.findType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/ffi/Type;
            astore 4 /* type */
        start local 4 // org.jruby.ext.ffi.Type type
         1: .line 1743
            aload 4 /* type */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/Type;)Lorg/jruby/ext/ffi/MemoryOp;
            astore 5 /* op */
        start local 5 // org.jruby.ext.ffi.MemoryOp op
         2: .line 1744
            aload 5 /* op */
            ifnonnull 4
         3: .line 1745
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            new java.lang.StringBuilder
            dup
            ldc "cannot get memory writer for type "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 1748
      StackMap locals: org.jruby.ext.ffi.Type org.jruby.ext.ffi.MemoryOp
      StackMap stack:
            aload 3 /* aryArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToArray:()Lorg/jruby/RubyArray;
            astore 6 /* arr */
        start local 6 // org.jruby.RubyArray arr
         5: .line 1749
            aload 6 /* arr */
            invokevirtual org.jruby.RubyArray.size:()I
            istore 7 /* len */
        start local 7 // int len
         6: .line 1751
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         7: iconst_0
            istore 9 /* off */
        start local 9 // int off
         8: goto 11
         9: .line 1752
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.ext.ffi.Type org.jruby.ext.ffi.MemoryOp org.jruby.RubyArray int int int
      StackMap stack:
            aload 5 /* op */
            aload 1 /* context */
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            iload 9 /* off */
            i2l
            aload 6 /* arr */
            iload 8 /* i */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.ffi.MemoryOp.put:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/runtime/builtin/IRubyObject;)V
        10: .line 1751
            iinc 8 /* i */ 1
            iload 9 /* off */
            aload 4 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            iadd
            istore 9 /* off */
      StackMap locals:
      StackMap stack:
        11: iload 8 /* i */
            iload 7 /* len */
            if_icmplt 9
        end local 9 // int off
        end local 8 // int i
        12: .line 1755
            aload 0 /* this */
            areturn
        end local 7 // int len
        end local 6 // org.jruby.RubyArray arr
        end local 5 // org.jruby.ext.ffi.MemoryOp op
        end local 4 // org.jruby.ext.ffi.Type type
        end local 3 // org.jruby.runtime.builtin.IRubyObject aryArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   13     1  context  Lorg/jruby/runtime/ThreadContext;
            0   13     2  typeArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   13     3   aryArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1   13     4     type  Lorg/jruby/ext/ffi/Type;
            2   13     5       op  Lorg/jruby/ext/ffi/MemoryOp;
            5   13     6      arr  Lorg/jruby/RubyArray;
            6   13     7      len  I
            7   12     8        i  I
            8   12     9      off  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_type"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      typeArg  
      aryArg   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_type(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=11, args_size=5
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject writer
        start local 4 // org.jruby.runtime.builtin.IRubyObject aryArg
         0: .line 1760
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getFFI:()Lorg/jruby/ext/ffi/FFI;
            invokevirtual org.jruby.ext.ffi.FFI.getTypeResolver:()Lorg/jruby/ext/ffi/TypeResolver;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* typeArg */
            invokevirtual org.jruby.ext.ffi.TypeResolver.findType:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/ext/ffi/Type;
            astore 5 /* type */
        start local 5 // org.jruby.ext.ffi.Type type
         1: .line 1761
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMetaClass:()Lorg/jruby/RubyClass;
            aload 3 /* writer */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            astore 6 /* method */
        start local 6 // org.jruby.internal.runtime.methods.DynamicMethod method
         2: .line 1763
            aload 4 /* aryArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToArray:()Lorg/jruby/RubyArray;
            astore 7 /* arr */
        start local 7 // org.jruby.RubyArray arr
         3: .line 1764
            aload 7 /* arr */
            invokevirtual org.jruby.RubyArray.size:()I
            istore 8 /* len */
        start local 8 // int len
         4: .line 1766
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         5: iconst_0
            istore 10 /* off */
        start local 10 // int off
         6: goto 9
         7: .line 1767
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject org.jruby.ext.ffi.Type org.jruby.internal.runtime.methods.DynamicMethod org.jruby.RubyArray int int int
      StackMap stack:
            aload 6 /* method */
            aload 1 /* context */
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            iload 10 /* off */
            i2l
            aload 5 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            i2l
            invokevirtual org.jruby.ext.ffi.AbstractMemory.slice:(Lorg/jruby/Ruby;JJ)Lorg/jruby/ext/ffi/AbstractMemory;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMetaClass:()Lorg/jruby/RubyClass;
            aload 3 /* writer */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.asJavaString:()Ljava/lang/String;
            aload 7 /* arr */
            iload 9 /* i */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            pop
         8: .line 1766
            iinc 9 /* i */ 1
            iload 10 /* off */
            aload 5 /* type */
            getfield org.jruby.ext.ffi.Type.size:I
            iadd
            istore 10 /* off */
      StackMap locals:
      StackMap stack:
         9: iload 9 /* i */
            iload 8 /* len */
            if_icmplt 7
        end local 10 // int off
        end local 9 // int i
        10: .line 1770
            aload 0 /* this */
            areturn
        end local 8 // int len
        end local 7 // org.jruby.RubyArray arr
        end local 6 // org.jruby.internal.runtime.methods.DynamicMethod method
        end local 5 // org.jruby.ext.ffi.Type type
        end local 4 // org.jruby.runtime.builtin.IRubyObject aryArg
        end local 3 // org.jruby.runtime.builtin.IRubyObject writer
        end local 2 // org.jruby.runtime.builtin.IRubyObject typeArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   11     1  context  Lorg/jruby/runtime/ThreadContext;
            0   11     2  typeArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3   writer  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     4   aryArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1   11     5     type  Lorg/jruby/ext/ffi/Type;
            2   11     6   method  Lorg/jruby/internal/runtime/methods/DynamicMethod;
            3   11     7      arr  Lorg/jruby/RubyArray;
            4   11     8      len  I
            5   10     9        i  I
            6   10    10      off  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_type"}, required = 3)
    MethodParameters:
         Name  Flags
      context  
      typeArg  
      writer   
      aryArg   

  public org.jruby.runtime.builtin.IRubyObject read_string(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1777
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_string"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject read_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject rbLength
         0: .line 1783
            aload 2 /* rbLength */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifne 2
         1: .line 1784
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* rbLength */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedByteString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/RubyString;
            goto 3
         2: .line 1785
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
         3: .line 1783
      StackMap locals:
      StackMap stack: org.jruby.runtime.builtin.IRubyObject
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject rbLength
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1   context  Lorg/jruby/runtime/ThreadContext;
            0    4     2  rbLength  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_string"})
    MethodParameters:
          Name  Flags
      context   
      rbLength  

  public org.jruby.runtime.builtin.IRubyObject get_string(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1790
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_string"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offArg
         0: .line 1795
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offArg */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_string"})
    MethodParameters:
         Name  Flags
      context  
      offArg   

  public org.jruby.runtime.builtin.IRubyObject get_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1800
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
         1: .line 1801
            aload 0 /* this */
            aload 2 /* offArg */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* lenArg */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
         2: .line 1800
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2   offArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_string"})
    MethodParameters:
         Name  Flags
      context  
      offArg   
      lenArg   

  public org.jruby.runtime.builtin.IRubyObject get_array_of_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject rbOffset
         0: .line 1806
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.addressSize:()I
            bipush 8
            idiv
            istore 3 /* POINTER_SIZE */
        start local 3 // int POINTER_SIZE
         1: .line 1808
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 4 /* runtime */
        start local 4 // org.jruby.Ruby runtime
         2: .line 1809
            aload 4 /* runtime */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;)Lorg/jruby/RubyArray;
            astore 5 /* arr */
        start local 5 // org.jruby.RubyArray arr
         3: .line 1811
            aload 0 /* this */
            aload 2 /* rbOffset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 6 /* off */
        start local 6 // long off
         4: goto 10
         5: .line 1812
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject int org.jruby.Ruby org.jruby.RubyArray long
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 6 /* off */
            invokevirtual org.jruby.ext.ffi.MemoryIO.getMemoryIO:(J)Lorg/jruby/ext/ffi/MemoryIO;
            astore 8 /* mem */
        start local 8 // org.jruby.ext.ffi.MemoryIO mem
         6: .line 1813
            aload 8 /* mem */
            ifnull 11
            aload 8 /* mem */
            invokevirtual org.jruby.ext.ffi.MemoryIO.isNull:()Z
            ifeq 8
         7: .line 1814
            goto 11
         8: .line 1816
      StackMap locals: org.jruby.ext.ffi.MemoryIO
      StackMap stack:
            aload 5 /* arr */
            aload 4 /* runtime */
            aload 8 /* mem */
            lconst_0
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyArray.add:(Ljava/lang/Object;)Z
            pop
        end local 8 // org.jruby.ext.ffi.MemoryIO mem
         9: .line 1811
            lload 6 /* off */
            iload 3 /* POINTER_SIZE */
            i2l
            ladd
            lstore 6 /* off */
      StackMap locals:
      StackMap stack:
        10: lload 6 /* off */
            aload 0 /* this */
            getfield org.jruby.ext.ffi.AbstractMemory.size:J
            iload 3 /* POINTER_SIZE */
            i2l
            lsub
            lcmp
            ifle 5
        end local 6 // long off
        11: .line 1819
      StackMap locals:
      StackMap stack:
            aload 5 /* arr */
            areturn
        end local 5 // org.jruby.RubyArray arr
        end local 4 // org.jruby.Ruby runtime
        end local 3 // int POINTER_SIZE
        end local 2 // org.jruby.runtime.builtin.IRubyObject rbOffset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   12     1       context  Lorg/jruby/runtime/ThreadContext;
            0   12     2      rbOffset  Lorg/jruby/runtime/builtin/IRubyObject;
            1   12     3  POINTER_SIZE  I
            2   12     4       runtime  Lorg/jruby/Ruby;
            3   12     5           arr  Lorg/jruby/RubyArray;
            4   11     6           off  J
            6    9     8           mem  Lorg/jruby/ext/ffi/MemoryIO;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_string"}, required = 1)
    MethodParameters:
          Name  Flags
      context   
      rbOffset  

  public org.jruby.runtime.builtin.IRubyObject get_array_of_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=12, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject rbOffset
        start local 3 // org.jruby.runtime.builtin.IRubyObject rbCount
         0: .line 1824
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.addressSize:()I
            bipush 8
            idiv
            istore 4 /* POINTER_SIZE */
        start local 4 // int POINTER_SIZE
         1: .line 1825
            aload 0 /* this */
            aload 2 /* rbOffset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 5 /* off */
        start local 5 // long off
         2: .line 1826
            aload 3 /* rbCount */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 7 /* count */
        start local 7 // int count
         3: .line 1828
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 8 /* runtime */
        start local 8 // org.jruby.Ruby runtime
         4: .line 1829
            aload 8 /* runtime */
            iload 7 /* count */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 9 /* arr */
        start local 9 // org.jruby.RubyArray arr
         5: .line 1831
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         6: goto 13
         7: .line 1832
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int long int org.jruby.Ruby org.jruby.RubyArray int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 5 /* off */
            iload 10 /* i */
            iload 4 /* POINTER_SIZE */
            imul
            i2l
            ladd
            invokevirtual org.jruby.ext.ffi.MemoryIO.getMemoryIO:(J)Lorg/jruby/ext/ffi/MemoryIO;
            astore 11 /* mem */
        start local 11 // org.jruby.ext.ffi.MemoryIO mem
         8: .line 1833
            aload 9 /* arr */
            aload 11 /* mem */
            ifnull 10
            aload 11 /* mem */
            invokevirtual org.jruby.ext.ffi.MemoryIO.isNull:()Z
            ifne 10
         9: .line 1834
            aload 8 /* runtime */
            aload 11 /* mem */
            lconst_0
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            goto 11
        10: .line 1835
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int long int org.jruby.Ruby org.jruby.RubyArray int org.jruby.ext.ffi.MemoryIO
      StackMap stack: org.jruby.RubyArray
            aload 8 /* runtime */
            invokevirtual org.jruby.Ruby.getNil:()Lorg/jruby/runtime/builtin/IRubyObject;
        11: .line 1833
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int long int org.jruby.Ruby org.jruby.RubyArray int org.jruby.ext.ffi.MemoryIO
      StackMap stack: org.jruby.RubyArray org.jruby.runtime.builtin.IRubyObject
            invokevirtual org.jruby.RubyArray.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // org.jruby.ext.ffi.MemoryIO mem
        12: .line 1831
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 10 /* i */
            iload 7 /* count */
            if_icmplt 7
        end local 10 // int i
        14: .line 1838
            aload 9 /* arr */
            areturn
        end local 9 // org.jruby.RubyArray arr
        end local 8 // org.jruby.Ruby runtime
        end local 7 // int count
        end local 5 // long off
        end local 4 // int POINTER_SIZE
        end local 3 // org.jruby.runtime.builtin.IRubyObject rbCount
        end local 2 // org.jruby.runtime.builtin.IRubyObject rbOffset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   15     1       context  Lorg/jruby/runtime/ThreadContext;
            0   15     2      rbOffset  Lorg/jruby/runtime/builtin/IRubyObject;
            0   15     3       rbCount  Lorg/jruby/runtime/builtin/IRubyObject;
            1   15     4  POINTER_SIZE  I
            2   15     5           off  J
            3   15     7         count  I
            4   15     8       runtime  Lorg/jruby/Ruby;
            5   15     9           arr  Lorg/jruby/RubyArray;
            6   14    10             i  I
            8   12    11           mem  Lorg/jruby/ext/ffi/MemoryIO;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_string"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      rbOffset  
      rbCount   

  public org.jruby.runtime.builtin.IRubyObject read_array_of_string(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1843
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_string:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_string"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject read_array_of_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject rbLength
         0: .line 1848
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* rbLength */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_string:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject rbLength
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1   context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  rbLength  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_string"}, required = 1)
    MethodParameters:
          Name  Flags
      context   
      rbLength  

  public org.jruby.runtime.builtin.IRubyObject put_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject strArg
         0: .line 1855
            aload 0 /* this */
            aload 2 /* offArg */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 4 /* off */
        start local 4 // long off
         1: .line 1856
            aload 3 /* strArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 6 /* bl */
        start local 6 // org.jruby.util.ByteList bl
         2: .line 1857
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 4 /* off */
            aload 6 /* bl */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 6 /* bl */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 6 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            invokevirtual org.jruby.ext.ffi.MemoryIO.putZeroTerminatedByteArray:(J[BII)V
         3: .line 1858
            aload 0 /* this */
            areturn
        end local 6 // org.jruby.util.ByteList bl
        end local 4 // long off
        end local 3 // org.jruby.runtime.builtin.IRubyObject strArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   offArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    4     3   strArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     4      off  J
            2    4     6       bl  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_string"})
    MethodParameters:
         Name  Flags
      context  
      offArg   
      strArg   

  public org.jruby.runtime.builtin.IRubyObject write_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject strArg
         0: .line 1863
            aload 2 /* strArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* bl */
        start local 3 // org.jruby.util.ByteList bl
         1: .line 1864
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 3 /* bl */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 3 /* bl */
            invokevirtual org.jruby.util.ByteList.begin:()I
            aload 3 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            invokevirtual org.jruby.ext.ffi.MemoryIO.put:(J[BII)V
         2: .line 1865
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.util.ByteList bl
        end local 2 // org.jruby.runtime.builtin.IRubyObject strArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2   strArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    3     3       bl  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_string"})
    MethodParameters:
         Name  Flags
      context  
      strArg   

  public org.jruby.runtime.builtin.IRubyObject write_string(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject strArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1870
            aload 2 /* strArg */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 4 /* bl */
        start local 4 // org.jruby.util.ByteList bl
         1: .line 1871
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.begin:()I
         2: .line 1872
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            aload 3 /* lenArg */
            invokestatic org.jruby.RubyInteger.num2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            l2i
            invokestatic java.lang.Math.min:(II)I
         3: .line 1871
            invokevirtual org.jruby.ext.ffi.MemoryIO.put:(J[BII)V
         4: .line 1873
            aload 0 /* this */
            areturn
        end local 4 // org.jruby.util.ByteList bl
        end local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject strArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2   strArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
            1    5     4       bl  Lorg/jruby/util/ByteList;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_string"})
    MethodParameters:
         Name  Flags
      context  
      strArg   
      lenArg   

  public org.jruby.runtime.builtin.IRubyObject get_bytes(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        start local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1878
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
         1: .line 1879
            aload 0 /* this */
            aload 2 /* offArg */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* lenArg */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
         2: .line 1878
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedByteString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/RubyString;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 2 // org.jruby.runtime.builtin.IRubyObject offArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
            0    3     2   offArg  Lorg/jruby/runtime/builtin/IRubyObject;
            0    3     3   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_bytes"})
    MethodParameters:
         Name  Flags
      context  
      offArg   
      lenArg   

  private org.jruby.runtime.builtin.IRubyObject putBytes(org.jruby.runtime.ThreadContext, long, org.jruby.util.ByteList, int, int);
    descriptor: (Lorg/jruby/runtime/ThreadContext;JLorg/jruby/util/ByteList;II)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // long off
        start local 4 // org.jruby.util.ByteList bl
        start local 5 // int idx
        start local 6 // int len
         0: .line 1883
            iload 5 /* idx */
            iflt 1
            iload 5 /* idx */
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            if_icmple 2
         1: .line 1884
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "invalid string index"
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 1887
      StackMap locals:
      StackMap stack:
            iload 6 /* len */
            iflt 3
            iload 6 /* len */
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 5 /* idx */
            isub
            if_icmple 4
         3: .line 1888
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "invalid length"
            invokevirtual org.jruby.Ruby.newRangeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         4: .line 1890
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 2 /* off */
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.getUnsafeBytes:()[B
            aload 4 /* bl */
            invokevirtual org.jruby.util.ByteList.begin:()I
            iload 5 /* idx */
            iadd
            iload 6 /* len */
            invokevirtual org.jruby.ext.ffi.MemoryIO.put:(J[BII)V
         5: .line 1892
            aload 0 /* this */
            areturn
        end local 6 // int len
        end local 5 // int idx
        end local 4 // org.jruby.util.ByteList bl
        end local 2 // long off
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    6     1  context  Lorg/jruby/runtime/ThreadContext;
            0    6     2      off  J
            0    6     4       bl  Lorg/jruby/util/ByteList;
            0    6     5      idx  I
            0    6     6      len  I
    MethodParameters:
         Name  Flags
      context  
      off      
      bl       
      idx      
      len      

  public org.jruby.runtime.builtin.IRubyObject put_bytes(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1897
            aload 2 /* args */
            iconst_1
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* bl */
        start local 3 // org.jruby.util.ByteList bl
         1: .line 1898
            aload 2 /* args */
            arraylength
            iconst_2
            if_icmple 2
            aload 2 /* args */
            iconst_2
            aaload
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            goto 3
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* idx */
        start local 4 // int idx
         4: .line 1899
            aload 2 /* args */
            arraylength
            iconst_3
            if_icmple 5
            aload 2 /* args */
            iconst_3
            aaload
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            goto 6
      StackMap locals: int
      StackMap stack:
         5: aload 3 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 4 /* idx */
            isub
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* len */
        start local 5 // int len
         7: .line 1901
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* args */
            iconst_0
            aaload
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* bl */
            iload 4 /* idx */
            iload 5 /* len */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putBytes:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/util/ByteList;II)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // int len
        end local 4 // int idx
        end local 3 // org.jruby.util.ByteList bl
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     3       bl  Lorg/jruby/util/ByteList;
            4    8     4      idx  I
            7    8     5      len  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_bytes"}, required = 2, optional = 2)
    MethodParameters:
         Name  Flags
      context  
      args     

  public org.jruby.runtime.builtin.IRubyObject read_bytes(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject lenArg
         0: .line 1906
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lconst_0
            aload 2 /* lenArg */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            invokestatic org.jruby.ext.ffi.MemoryUtil.getTaintedByteString:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/MemoryIO;JI)Lorg/jruby/RubyString;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject lenArg
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   lenArg  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_bytes"})
    MethodParameters:
         Name  Flags
      context  
      lenArg   

  public org.jruby.runtime.builtin.IRubyObject write_bytes(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 1911
            aload 2 /* args */
            iconst_0
            aaload
            invokeinterface org.jruby.runtime.builtin.IRubyObject.convertToString:()Lorg/jruby/RubyString;
            invokevirtual org.jruby.RubyString.getByteList:()Lorg/jruby/util/ByteList;
            astore 3 /* bl */
        start local 3 // org.jruby.util.ByteList bl
         1: .line 1912
            aload 2 /* args */
            arraylength
            iconst_1
            if_icmple 2
            aload 2 /* args */
            iconst_1
            aaload
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            goto 3
      StackMap locals: org.jruby.util.ByteList
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 4 /* idx */
        start local 4 // int idx
         4: .line 1913
            aload 2 /* args */
            arraylength
            iconst_2
            if_icmple 5
            aload 2 /* args */
            iconst_2
            aaload
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            goto 6
      StackMap locals: int
      StackMap stack:
         5: aload 3 /* bl */
            invokevirtual org.jruby.util.ByteList.length:()I
            iload 4 /* idx */
            isub
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* len */
        start local 5 // int len
         7: .line 1914
            aload 0 /* this */
            aload 1 /* context */
            lconst_0
            aload 3 /* bl */
            iload 4 /* idx */
            iload 5 /* len */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putBytes:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/util/ByteList;II)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 5 // int len
        end local 4 // int idx
        end local 3 // org.jruby.util.ByteList bl
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    8     1  context  Lorg/jruby/runtime/ThreadContext;
            0    8     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
            1    8     3       bl  Lorg/jruby/util/ByteList;
            4    8     4      idx  I
            7    8     5      len  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_bytes"}, required = 1, optional = 2)
    MethodParameters:
         Name  Flags
      context  
      args     

  public org.jruby.runtime.builtin.IRubyObject read_pointer(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1920
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            lconst_0
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getPointer:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/Pointer;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_pointer"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_pointer(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 1925
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            lconst_0
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getPointer:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/Pointer;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_pointer"})
    MethodParameters:
         Name  Flags
      context  

  public org.jruby.runtime.builtin.IRubyObject get_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
         0: .line 1930
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getPointer:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/Pointer;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_pointer"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      offset   

  private void putPointer(org.jruby.runtime.ThreadContext, long, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // long offset
        start local 4 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1936
            aload 4 /* value */
            instanceof org.jruby.ext.ffi.Pointer
            ifeq 3
         1: .line 1937
            aload 0 /* this */
            aload 1 /* context */
            lload 2 /* offset */
            aload 4 /* value */
            checkcast org.jruby.ext.ffi.Pointer
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/ext/ffi/Pointer;)V
         2: .line 1939
            goto 11
      StackMap locals:
      StackMap stack:
         3: aload 4 /* value */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.isNil:()Z
            ifeq 6
         4: .line 1940
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 2 /* offset */
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.putAddress:(JJ)V
         5: .line 1942
            goto 11
      StackMap locals:
      StackMap stack:
         6: aload 4 /* value */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            ldc "to_ptr"
            invokevirtual org.jruby.RubyClass.searchMethod:(Ljava/lang/String;)Lorg/jruby/internal/runtime/methods/DynamicMethod;
            dup
            astore 5 /* conversionMethod */
        start local 5 // org.jruby.internal.runtime.methods.DynamicMethod conversionMethod
         7: invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isUndefined:()Z
            ifne 10
         8: .line 1943
            aload 0 /* this */
            aload 1 /* context */
            lload 2 /* offset */
            aload 5 /* conversionMethod */
            aload 1 /* context */
            aload 4 /* value */
            aload 4 /* value */
            invokeinterface org.jruby.runtime.builtin.IRubyObject.getMetaClass:()Lorg/jruby/RubyClass;
            ldc "to_ptr"
            invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
         9: .line 1945
            goto 11
        10: .line 1946
      StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* value */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokevirtual org.jruby.Ruby.getFFI:()Lorg/jruby/ext/ffi/FFI;
            getfield org.jruby.ext.ffi.FFI.pointerClass:Lorg/jruby/RubyClass;
            invokevirtual org.jruby.Ruby.newTypeError:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyClass;)Lorg/jruby/exceptions/RaiseException;
            athrow
        end local 5 // org.jruby.internal.runtime.methods.DynamicMethod conversionMethod
        11: .line 1948
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // long offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0              this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   12     1           context  Lorg/jruby/runtime/ThreadContext;
            0   12     2            offset  J
            0   12     4             value  Lorg/jruby/runtime/builtin/IRubyObject;
            7   11     5  conversionMethod  Lorg/jruby/internal/runtime/methods/DynamicMethod;
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  private void putPointer(org.jruby.runtime.ThreadContext, long, org.jruby.ext.ffi.Pointer);
    descriptor: (Lorg/jruby/runtime/ThreadContext;JLorg/jruby/ext/ffi/Pointer;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // long offset
        start local 4 // org.jruby.ext.ffi.Pointer value
         0: .line 1951
            aload 4 /* value */
            invokevirtual org.jruby.ext.ffi.Pointer.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            astore 5 /* ptr */
        start local 5 // org.jruby.ext.ffi.MemoryIO ptr
         1: .line 1952
            aload 5 /* ptr */
            invokevirtual org.jruby.ext.ffi.MemoryIO.isDirect:()Z
            ifeq 4
         2: .line 1953
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 2 /* offset */
            aload 5 /* ptr */
            invokevirtual org.jruby.ext.ffi.MemoryIO.putMemoryIO:(JLorg/jruby/ext/ffi/MemoryIO;)V
         3: .line 1954
            goto 8
      StackMap locals: org.jruby.ext.ffi.MemoryIO
      StackMap stack:
         4: aload 5 /* ptr */
            invokevirtual org.jruby.ext.ffi.MemoryIO.isNull:()Z
            ifeq 7
         5: .line 1955
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 2 /* offset */
            lconst_0
            invokevirtual org.jruby.ext.ffi.MemoryIO.putAddress:(JJ)V
         6: .line 1956
            goto 8
         7: .line 1957
      StackMap locals:
      StackMap stack:
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "Cannot convert argument to pointer"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         8: .line 1959
      StackMap locals:
      StackMap stack:
            return
        end local 5 // org.jruby.ext.ffi.MemoryIO ptr
        end local 4 // org.jruby.ext.ffi.Pointer value
        end local 2 // long offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    9     1  context  Lorg/jruby/runtime/ThreadContext;
            0    9     2   offset  J
            0    9     4    value  Lorg/jruby/ext/ffi/Pointer;
            1    9     5      ptr  Lorg/jruby/ext/ffi/MemoryIO;
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject write_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1963
            aload 0 /* this */
            aload 1 /* context */
            lconst_0
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 1964
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_pointer"})
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1969
            aload 0 /* this */
            aload 1 /* context */
            lconst_0
            aload 2 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 1970
            aload 0 /* this */
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_pointer"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public org.jruby.runtime.builtin.IRubyObject put_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 1975
            aload 0 /* this */
            aload 1 /* context */
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 3 /* value */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 1976
            aload 0 /* this */
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    2     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_pointer"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      value    

  public org.jruby.runtime.builtin.IRubyObject get_array_of_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=11, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 1981
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            getfield org.jruby.ext.ffi.Platform.addressSize:I
            bipush 8
            idiv
            istore 4 /* POINTER_SIZE */
        start local 4 // int POINTER_SIZE
         1: .line 1982
            aload 3 /* length */
            invokestatic org.jruby.ext.ffi.Util.int32Value:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            istore 5 /* count */
        start local 5 // int count
         2: .line 1983
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            astore 6 /* runtime */
        start local 6 // org.jruby.Ruby runtime
         3: .line 1984
            aload 6 /* runtime */
            iload 5 /* count */
            invokestatic org.jruby.RubyArray.newArray:(Lorg/jruby/Ruby;I)Lorg/jruby/RubyArray;
            astore 7 /* arr */
        start local 7 // org.jruby.RubyArray arr
         4: .line 1985
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 8 /* off */
        start local 8 // long off
         5: .line 1987
            iconst_0
            istore 10 /* i */
        start local 10 // int i
         6: goto 9
         7: .line 1988
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int int org.jruby.Ruby org.jruby.RubyArray long int
      StackMap stack:
            aload 7 /* arr */
            aload 0 /* this */
            aload 6 /* runtime */
            lload 8 /* off */
            iload 10 /* i */
            iload 4 /* POINTER_SIZE */
            imul
            i2l
            ladd
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getPointer:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/Pointer;
            invokevirtual org.jruby.RubyArray.add:(Ljava/lang/Object;)Z
            pop
         8: .line 1987
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 10 /* i */
            iload 5 /* count */
            if_icmplt 7
        end local 10 // int i
        10: .line 1991
            aload 7 /* arr */
            areturn
        end local 8 // long off
        end local 7 // org.jruby.RubyArray arr
        end local 6 // org.jruby.Ruby runtime
        end local 5 // int count
        end local 4 // int POINTER_SIZE
        end local 3 // org.jruby.runtime.builtin.IRubyObject length
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   11     1       context  Lorg/jruby/runtime/ThreadContext;
            0   11     2        offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0   11     3        length  Lorg/jruby/runtime/builtin/IRubyObject;
            1   11     4  POINTER_SIZE  I
            2   11     5         count  I
            3   11     6       runtime  Lorg/jruby/Ruby;
            4   11     7           arr  Lorg/jruby/RubyArray;
            5   11     8           off  J
            6   10    10             i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"get_array_of_pointer"}, required = 2)
    MethodParameters:
         Name  Flags
      context  
      offset   
      length   

  public org.jruby.runtime.builtin.IRubyObject put_array_of_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 1996
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            getfield org.jruby.ext.ffi.Platform.addressSize:I
            bipush 8
            idiv
            istore 4 /* POINTER_SIZE */
        start local 4 // int POINTER_SIZE
         1: .line 1997
            aload 3 /* arrParam */
            checkcast org.jruby.RubyArray
            astore 5 /* arr */
        start local 5 // org.jruby.RubyArray arr
         2: .line 1998
            aload 5 /* arr */
            invokevirtual org.jruby.RubyArray.getLength:()I
            istore 6 /* count */
        start local 6 // int count
         3: .line 2000
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            lstore 7 /* off */
        start local 7 // long off
         4: .line 2001
            iconst_0
            istore 9 /* i */
        start local 9 // int i
         5: goto 8
         6: .line 2002
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext org.jruby.runtime.builtin.IRubyObject org.jruby.runtime.builtin.IRubyObject int org.jruby.RubyArray int long int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* context */
            lload 7 /* off */
            iload 9 /* i */
            iload 4 /* POINTER_SIZE */
            imul
            i2l
            ladd
            aload 5 /* arr */
            iload 9 /* i */
            invokevirtual org.jruby.RubyArray.entry:(I)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.ext.ffi.AbstractMemory.putPointer:(Lorg/jruby/runtime/ThreadContext;JLorg/jruby/runtime/builtin/IRubyObject;)V
         7: .line 2001
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 9 /* i */
            iload 6 /* count */
            if_icmplt 6
        end local 9 // int i
         9: .line 2004
            aload 0 /* this */
            areturn
        end local 7 // long off
        end local 6 // int count
        end local 5 // org.jruby.RubyArray arr
        end local 4 // int POINTER_SIZE
        end local 3 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/jruby/ext/ffi/AbstractMemory;
            0   10     1       context  Lorg/jruby/runtime/ThreadContext;
            0   10     2        offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0   10     3      arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
            1   10     4  POINTER_SIZE  I
            2   10     5           arr  Lorg/jruby/RubyArray;
            3   10     6         count  I
            4   10     7           off  J
            5    9     9             i  I
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_array_of_pointer"}, required = 2)
    MethodParameters:
          Name  Flags
      context   
      offset    
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject read_array_of_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject length
         0: .line 2009
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* length */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.get_array_of_pointer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject length
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   length  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"read_array_of_pointer"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      length   

  public org.jruby.runtime.builtin.IRubyObject write_array_of_pointer(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject arrParam
         0: .line 2014
            aload 0 /* this */
            aload 1 /* context */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            invokestatic org.jruby.RubyFixnum.zero:(Lorg/jruby/Ruby;)Lorg/jruby/RubyFixnum;
            aload 2 /* arrParam */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.put_array_of_pointer:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject arrParam
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1   context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  arrParam  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"write_array_of_pointer"}, required = 1)
    MethodParameters:
          Name  Flags
      context   
      arrParam  

  public org.jruby.runtime.builtin.IRubyObject put_callback(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject proc
        start local 4 // org.jruby.runtime.builtin.IRubyObject cbInfo
         0: .line 2021
            aload 4 /* cbInfo */
            instanceof org.jruby.ext.ffi.CallbackInfo
            ifne 2
         1: .line 2022
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            ldc "invalid CallbackInfo"
            invokevirtual org.jruby.Ruby.newArgumentError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
            athrow
         2: .line 2024
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ext.ffi.Factory.getInstance:()Lorg/jruby/ext/ffi/Factory;
            invokevirtual org.jruby.ext.ffi.Factory.getCallbackManager:()Lorg/jruby/ext/ffi/CallbackManager;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 4 /* cbInfo */
            checkcast org.jruby.ext.ffi.CallbackInfo
            aload 3 /* proc */
            invokevirtual org.jruby.ext.ffi.CallbackManager.getCallback:(Lorg/jruby/Ruby;Lorg/jruby/ext/ffi/CallbackInfo;Ljava/lang/Object;)Lorg/jruby/ext/ffi/Pointer;
            astore 5 /* ptr */
        start local 5 // org.jruby.ext.ffi.Pointer ptr
         3: .line 2025
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            aload 0 /* this */
            aload 2 /* offset */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getOffset:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            aload 5 /* ptr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            invokevirtual org.jruby.ext.ffi.MemoryIO.putMemoryIO:(JLorg/jruby/ext/ffi/MemoryIO;)V
         4: .line 2026
            aload 0 /* this */
            areturn
        end local 5 // org.jruby.ext.ffi.Pointer ptr
        end local 4 // org.jruby.runtime.builtin.IRubyObject cbInfo
        end local 3 // org.jruby.runtime.builtin.IRubyObject proc
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    5     1  context  Lorg/jruby/runtime/ThreadContext;
            0    5     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     3     proc  Lorg/jruby/runtime/builtin/IRubyObject;
            0    5     4   cbInfo  Lorg/jruby/runtime/builtin/IRubyObject;
            3    5     5      ptr  Lorg/jruby/ext/ffi/Pointer;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"put_callback"}, required = 3)
    MethodParameters:
         Name  Flags
      context  
      offset   
      proc     
      cbInfo   

  public org.jruby.runtime.builtin.IRubyObject op_plus(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 2031
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* value */
            invokestatic org.jruby.RubyNumeric.fix2long:(Lorg/jruby/runtime/builtin/IRubyObject;)J
            invokevirtual org.jruby.ext.ffi.AbstractMemory.slice:(Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/AbstractMemory;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject value
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2    value  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"+"}, required = 1)
    MethodParameters:
         Name  Flags
      context  
      value    

  public final org.jruby.runtime.builtin.IRubyObject order(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2036
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 0 /* this */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            invokevirtual org.jruby.ext.ffi.MemoryIO.order:()Ljava/nio/ByteOrder;
            getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 1
            ldc "little"
            goto 2
      StackMap locals:
      StackMap stack: org.jruby.Ruby
         1: ldc "big"
      StackMap locals: org.jruby.ext.ffi.AbstractMemory org.jruby.runtime.ThreadContext
      StackMap stack: org.jruby.Ruby java.lang.String
         2: invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    3     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"order"}, required = 0)
    MethodParameters:
         Name  Flags
      context  

  public final org.jruby.runtime.builtin.IRubyObject order(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject byte_order
         0: .line 2041
            aload 0 /* this */
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
            aload 2 /* byte_order */
            invokestatic org.jruby.ext.ffi.Util.parseByteOrder:(Lorg/jruby/Ruby;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/nio/ByteOrder;
            invokevirtual org.jruby.ext.ffi.AbstractMemory.order:(Lorg/jruby/Ruby;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/AbstractMemory;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject byte_order
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1     context  Lorg/jruby/runtime/ThreadContext;
            0    1     2  byte_order  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"order"}, required = 1)
    MethodParameters:
            Name  Flags
      context     
      byte_order  

  public final org.jruby.runtime.builtin.IRubyObject to_ptr(org.jruby.runtime.ThreadContext);
    descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
         0: .line 2046
            aload 0 /* this */
            areturn
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"to_ptr"})
    MethodParameters:
         Name  Flags
      context  

  public final org.jruby.runtime.builtin.IRubyObject slice(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.jruby.ext.ffi.AbstractMemory this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject offset
        start local 3 // org.jruby.runtime.builtin.IRubyObject size
         0: .line 2051
            aload 0 /* this */
            aload 1 /* context */
            invokevirtual org.jruby.runtime.ThreadContext.getRuntime:()Lorg/jruby/Ruby;
            aload 2 /* offset */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            i2l
            aload 3 /* size */
            invokestatic org.jruby.RubyNumeric.num2int:(Lorg/jruby/runtime/builtin/IRubyObject;)I
            i2l
            invokevirtual org.jruby.ext.ffi.AbstractMemory.slice:(Lorg/jruby/Ruby;JJ)Lorg/jruby/ext/ffi/AbstractMemory;
            areturn
        end local 3 // org.jruby.runtime.builtin.IRubyObject size
        end local 2 // org.jruby.runtime.builtin.IRubyObject offset
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.AbstractMemory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2   offset  Lorg/jruby/runtime/builtin/IRubyObject;
            0    1     3     size  Lorg/jruby/runtime/builtin/IRubyObject;
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyMethod(name = {"slice"})
    MethodParameters:
         Name  Flags
      context  
      offset   
      size     

  public abstract org.jruby.ext.ffi.AbstractMemory order(org.jruby.Ruby, java.nio.ByteOrder);
    descriptor: (Lorg/jruby/Ruby;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/AbstractMemory;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      runtime  
      order    

  protected abstract org.jruby.ext.ffi.AbstractMemory slice(org.jruby.Ruby, long);
    descriptor: (Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/AbstractMemory;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      runtime  
      offset   

  protected abstract org.jruby.ext.ffi.AbstractMemory slice(org.jruby.Ruby, long, long);
    descriptor: (Lorg/jruby/Ruby;JJ)Lorg/jruby/ext/ffi/AbstractMemory;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      runtime  
      offset   
      size     

  protected abstract org.jruby.ext.ffi.Pointer getPointer(org.jruby.Ruby, long);
    descriptor: (Lorg/jruby/Ruby;J)Lorg/jruby/ext/ffi/Pointer;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      runtime  
      offset   
}
SourceFile: "AbstractMemory.java"
    RuntimeVisibleAnnotations: 
      org.jruby.anno.JRubyClass(name = {"FFI::AbtractMemoryAbstractMemory"}, parent = "Object")