abstract class org.jruby.ext.ffi.MemoryOp
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: org.jruby.ext.ffi.MemoryOp
  super_class: java.lang.Object
{
  public static final org.jruby.ext.ffi.MemoryOp BOOL;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT8;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT8;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT16;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT16;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT32;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT32;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT64;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT64;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp FLOAT32;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp FLOAT64;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT16SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT16SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT32SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT32SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp INT64SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp UINT64SWAP;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.jruby.ext.ffi.MemoryOp POINTER;
    descriptor: Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$org$jruby$ext$ffi$NativeType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 15
            new org.jruby.ext.ffi.MemoryOp$BooleanOp
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$BooleanOp.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.BOOL:Lorg/jruby/ext/ffi/MemoryOp;
         1: .line 16
            new org.jruby.ext.ffi.MemoryOp$Signed8
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed8.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT8:Lorg/jruby/ext/ffi/MemoryOp;
         2: .line 17
            new org.jruby.ext.ffi.MemoryOp$Unsigned8
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned8.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT8:Lorg/jruby/ext/ffi/MemoryOp;
         3: .line 18
            new org.jruby.ext.ffi.MemoryOp$Signed16
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed16.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT16:Lorg/jruby/ext/ffi/MemoryOp;
         4: .line 19
            new org.jruby.ext.ffi.MemoryOp$Unsigned16
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned16.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT16:Lorg/jruby/ext/ffi/MemoryOp;
         5: .line 20
            new org.jruby.ext.ffi.MemoryOp$Signed32
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed32.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT32:Lorg/jruby/ext/ffi/MemoryOp;
         6: .line 21
            new org.jruby.ext.ffi.MemoryOp$Unsigned32
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned32.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT32:Lorg/jruby/ext/ffi/MemoryOp;
         7: .line 22
            new org.jruby.ext.ffi.MemoryOp$Signed64
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed64.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT64:Lorg/jruby/ext/ffi/MemoryOp;
         8: .line 23
            new org.jruby.ext.ffi.MemoryOp$Unsigned64
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned64.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT64:Lorg/jruby/ext/ffi/MemoryOp;
         9: .line 24
            new org.jruby.ext.ffi.MemoryOp$Float32
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Float32.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.FLOAT32:Lorg/jruby/ext/ffi/MemoryOp;
        10: .line 25
            new org.jruby.ext.ffi.MemoryOp$Float64
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Float64.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.FLOAT64:Lorg/jruby/ext/ffi/MemoryOp;
        11: .line 26
            new org.jruby.ext.ffi.MemoryOp$Signed16Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed16Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT16SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        12: .line 27
            new org.jruby.ext.ffi.MemoryOp$Unsigned16Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned16Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT16SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        13: .line 28
            new org.jruby.ext.ffi.MemoryOp$Signed32Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed32Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT32SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        14: .line 29
            new org.jruby.ext.ffi.MemoryOp$Unsigned32Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned32Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT32SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        15: .line 30
            new org.jruby.ext.ffi.MemoryOp$Signed64Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Signed64Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.INT64SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        16: .line 31
            new org.jruby.ext.ffi.MemoryOp$Unsigned64Swapped
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$Unsigned64Swapped.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.UINT64SWAP:Lorg/jruby/ext/ffi/MemoryOp;
        17: .line 32
            new org.jruby.ext.ffi.MemoryOp$PointerOp
            dup
            invokespecial org.jruby.ext.ffi.MemoryOp$PointerOp.<init>:()V
            putstatic org.jruby.ext.ffi.MemoryOp.POINTER:Lorg/jruby/ext/ffi/MemoryOp;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.MemoryOp this
         0: .line 14
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.jruby.ext.ffi.MemoryOp this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/ext/ffi/MemoryOp;

  public static org.jruby.ext.ffi.MemoryOp getMemoryOp(org.jruby.ext.ffi.NativeType);
    descriptor: (Lorg/jruby/ext/ffi/NativeType;)Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.NativeType type
         0: .line 35
            aload 0 /* type */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            areturn
        end local 0 // org.jruby.ext.ffi.NativeType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Lorg/jruby/ext/ffi/NativeType;
    MethodParameters:
      Name  Flags
      type  

  public static org.jruby.ext.ffi.MemoryOp getMemoryOp(org.jruby.ext.ffi.NativeType, java.nio.ByteOrder);
    descriptor: (Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.ext.ffi.NativeType type
        start local 1 // java.nio.ByteOrder order
         0: .line 39
            invokestatic org.jruby.ext.ffi.MemoryOp.$SWITCH_TABLE$org$jruby$ext$ffi$NativeType:()[I
            aload 0 /* type */
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iaload
            tableswitch { // 2 - 15
                    2: 1
                    3: 2
                    4: 3
                    5: 4
                    6: 7
                    7: 10
                    8: 13
                    9: 16
                   10: 19
                   11: 24
                   12: 28
                   13: 22
                   14: 23
                   15: 32
              default: 33
          }
         1: .line 41
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.BOOL:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
         2: .line 43
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.INT8:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
         3: .line 45
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.UINT8:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
         4: .line 47
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
            getstatic org.jruby.ext.ffi.MemoryOp.INT16:Lorg/jruby/ext/ffi/MemoryOp;
            goto 6
      StackMap locals:
      StackMap stack:
         5: getstatic org.jruby.ext.ffi.MemoryOp.INT16SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
         6: areturn
         7: .line 49
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 8
            getstatic org.jruby.ext.ffi.MemoryOp.UINT16:Lorg/jruby/ext/ffi/MemoryOp;
            goto 9
      StackMap locals:
      StackMap stack:
         8: getstatic org.jruby.ext.ffi.MemoryOp.UINT16SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
         9: areturn
        10: .line 51
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 11
            getstatic org.jruby.ext.ffi.MemoryOp.INT32:Lorg/jruby/ext/ffi/MemoryOp;
            goto 12
      StackMap locals:
      StackMap stack:
        11: getstatic org.jruby.ext.ffi.MemoryOp.INT32SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
        12: areturn
        13: .line 53
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 14
            getstatic org.jruby.ext.ffi.MemoryOp.UINT32:Lorg/jruby/ext/ffi/MemoryOp;
            goto 15
      StackMap locals:
      StackMap stack:
        14: getstatic org.jruby.ext.ffi.MemoryOp.UINT32SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
        15: areturn
        16: .line 55
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 17
            getstatic org.jruby.ext.ffi.MemoryOp.INT64:Lorg/jruby/ext/ffi/MemoryOp;
            goto 18
      StackMap locals:
      StackMap stack:
        17: getstatic org.jruby.ext.ffi.MemoryOp.INT64SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
        18: areturn
        19: .line 57
      StackMap locals:
      StackMap stack:
            aload 1 /* order */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 20
            getstatic org.jruby.ext.ffi.MemoryOp.UINT64:Lorg/jruby/ext/ffi/MemoryOp;
            goto 21
      StackMap locals:
      StackMap stack:
        20: getstatic org.jruby.ext.ffi.MemoryOp.UINT64SWAP:Lorg/jruby/ext/ffi/MemoryOp;
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
        21: areturn
        22: .line 59
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.FLOAT32:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
        23: .line 61
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.FLOAT64:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
        24: .line 63
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 26
        25: .line 64
            getstatic org.jruby.ext.ffi.NativeType.INT:Lorg/jruby/ext/ffi/NativeType;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            goto 27
      StackMap locals:
      StackMap stack:
        26: getstatic org.jruby.ext.ffi.NativeType.LONG_LONG:Lorg/jruby/ext/ffi/NativeType;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
        27: .line 63
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
            areturn
        28: .line 66
      StackMap locals:
      StackMap stack:
            invokestatic org.jruby.ext.ffi.Platform.getPlatform:()Lorg/jruby/ext/ffi/Platform;
            invokevirtual org.jruby.ext.ffi.Platform.longSize:()I
            bipush 32
            if_icmpne 30
        29: .line 67
            getstatic org.jruby.ext.ffi.NativeType.UINT:Lorg/jruby/ext/ffi/NativeType;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            goto 31
      StackMap locals:
      StackMap stack:
        30: getstatic org.jruby.ext.ffi.NativeType.ULONG_LONG:Lorg/jruby/ext/ffi/NativeType;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
        31: .line 66
      StackMap locals:
      StackMap stack: org.jruby.ext.ffi.MemoryOp
            areturn
        32: .line 69
      StackMap locals:
      StackMap stack:
            getstatic org.jruby.ext.ffi.MemoryOp.POINTER:Lorg/jruby/ext/ffi/MemoryOp;
            areturn
        33: .line 71
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.nio.ByteOrder order
        end local 0 // org.jruby.ext.ffi.NativeType type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   34     0   type  Lorg/jruby/ext/ffi/NativeType;
            0   34     1  order  Ljava/nio/ByteOrder;
    MethodParameters:
       Name  Flags
      type   
      order  

  public static org.jruby.ext.ffi.MemoryOp getMemoryOp(org.jruby.ext.ffi.Type);
    descriptor: (Lorg/jruby/ext/ffi/Type;)Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.jruby.ext.ffi.Type type
         0: .line 76
            aload 0 /* type */
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/Type;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            areturn
        end local 0 // org.jruby.ext.ffi.Type type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  type  Lorg/jruby/ext/ffi/Type;
    MethodParameters:
      Name  Flags
      type  

  public static org.jruby.ext.ffi.MemoryOp getMemoryOp(org.jruby.ext.ffi.Type, java.nio.ByteOrder);
    descriptor: (Lorg/jruby/ext/ffi/Type;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.jruby.ext.ffi.Type type
        start local 1 // java.nio.ByteOrder order
         0: .line 80
            aload 0 /* type */
            instanceof org.jruby.ext.ffi.Type$Builtin
            ifeq 2
         1: .line 81
            aload 0 /* type */
            invokevirtual org.jruby.ext.ffi.Type.getNativeType:()Lorg/jruby/ext/ffi/NativeType;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/NativeType;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            areturn
         2: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            instanceof org.jruby.ext.ffi.StructByValue
            ifeq 5
         3: .line 84
            aload 0 /* type */
            checkcast org.jruby.ext.ffi.StructByValue
            astore 2 /* sbv */
        start local 2 // org.jruby.ext.ffi.StructByValue sbv
         4: .line 85
            new org.jruby.ext.ffi.MemoryOp$StructOp
            dup
            aload 2 /* sbv */
            invokevirtual org.jruby.ext.ffi.StructByValue.getStructClass:()Lorg/jruby/RubyClass;
            invokespecial org.jruby.ext.ffi.MemoryOp$StructOp.<init>:(Lorg/jruby/RubyClass;)V
            areturn
        end local 2 // org.jruby.ext.ffi.StructByValue sbv
         5: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* type */
            instanceof org.jruby.ext.ffi.MappedType
            ifeq 7
         6: .line 88
            new org.jruby.ext.ffi.MemoryOp$Mapped
            dup
            aload 0 /* type */
            checkcast org.jruby.ext.ffi.MappedType
            invokevirtual org.jruby.ext.ffi.MappedType.getRealType:()Lorg/jruby/ext/ffi/Type;
            aload 1 /* order */
            invokestatic org.jruby.ext.ffi.MemoryOp.getMemoryOp:(Lorg/jruby/ext/ffi/Type;Ljava/nio/ByteOrder;)Lorg/jruby/ext/ffi/MemoryOp;
            aload 0 /* type */
            checkcast org.jruby.ext.ffi.MappedType
            invokespecial org.jruby.ext.ffi.MemoryOp$Mapped.<init>:(Lorg/jruby/ext/ffi/MemoryOp;Lorg/jruby/ext/ffi/MappedType;)V
            areturn
         7: .line 91
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.nio.ByteOrder order
        end local 0 // org.jruby.ext.ffi.Type type
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   type  Lorg/jruby/ext/ffi/Type;
            0    8     1  order  Ljava/nio/ByteOrder;
            4    5     2    sbv  Lorg/jruby/ext/ffi/StructByValue;
    MethodParameters:
       Name  Flags
      type   
      order  

  abstract org.jruby.runtime.builtin.IRubyObject get(org.jruby.runtime.ThreadContext, org.jruby.ext.ffi.MemoryIO, long);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      context  
      io       
      offset   

  abstract void put(org.jruby.runtime.ThreadContext, org.jruby.ext.ffi.MemoryIO, long, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      context  
      io       
      offset   
      value    

  org.jruby.runtime.builtin.IRubyObject get(org.jruby.runtime.ThreadContext, org.jruby.ext.ffi.AbstractMemory, long);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/AbstractMemory;J)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.ext.ffi.MemoryOp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.ext.ffi.AbstractMemory ptr
        start local 3 // long offset
         0: .line 98
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ptr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 3 /* offset */
            invokevirtual org.jruby.ext.ffi.MemoryOp.get:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;J)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 3 // long offset
        end local 2 // org.jruby.ext.ffi.AbstractMemory ptr
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.MemoryOp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/ext/ffi/MemoryOp;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2      ptr  Lorg/jruby/ext/ffi/AbstractMemory;
            0    1     3   offset  J
    MethodParameters:
         Name  Flags
      context  
      ptr      
      offset   

  void put(org.jruby.runtime.ThreadContext, org.jruby.ext.ffi.AbstractMemory, long, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/AbstractMemory;JLorg/jruby/runtime/builtin/IRubyObject;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.jruby.ext.ffi.MemoryOp this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.ext.ffi.AbstractMemory ptr
        start local 3 // long offset
        start local 5 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 102
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* ptr */
            invokevirtual org.jruby.ext.ffi.AbstractMemory.getMemoryIO:()Lorg/jruby/ext/ffi/MemoryIO;
            lload 3 /* offset */
            aload 5 /* value */
            invokevirtual org.jruby.ext.ffi.MemoryOp.put:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/ext/ffi/MemoryIO;JLorg/jruby/runtime/builtin/IRubyObject;)V
         1: .line 103
            return
        end local 5 // org.jruby.runtime.builtin.IRubyObject value
        end local 3 // long offset
        end local 2 // org.jruby.ext.ffi.AbstractMemory ptr
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.ext.ffi.MemoryOp this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/jruby/ext/ffi/MemoryOp;
            0    2     1  context  Lorg/jruby/runtime/ThreadContext;
            0    2     2      ptr  Lorg/jruby/ext/ffi/AbstractMemory;
            0    2     3   offset  J
            0    2     5    value  Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      ptr      
      offset   
      value    

  static int[] $SWITCH_TABLE$org$jruby$ext$ffi$NativeType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 14
            getstatic org.jruby.ext.ffi.MemoryOp.$SWITCH_TABLE$org$jruby$ext$ffi$NativeType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.jruby.ext.ffi.NativeType.values:()[Lorg/jruby/ext/ffi/NativeType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.jruby.ext.ffi.NativeType.ARRAY:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 23
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.jruby.ext.ffi.NativeType.BOOL:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.jruby.ext.ffi.NativeType.BUFFER_IN:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 16
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.jruby.ext.ffi.NativeType.BUFFER_INOUT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 18
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.jruby.ext.ffi.NativeType.BUFFER_OUT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 17
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.jruby.ext.ffi.NativeType.CHAR:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iconst_3
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.jruby.ext.ffi.NativeType.CHAR_ARRAY:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 19
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.jruby.ext.ffi.NativeType.DOUBLE:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 14
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.jruby.ext.ffi.NativeType.FLOAT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 13
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.jruby.ext.ffi.NativeType.INT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 7
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.jruby.ext.ffi.NativeType.LONG:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 11
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.jruby.ext.ffi.NativeType.LONG_LONG:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 9
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.jruby.ext.ffi.NativeType.MAPPED:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 25
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.jruby.ext.ffi.NativeType.POINTER:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 15
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.jruby.ext.ffi.NativeType.SHORT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iconst_5
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.jruby.ext.ffi.NativeType.STRING:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 20
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.jruby.ext.ffi.NativeType.STRUCT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 24
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.jruby.ext.ffi.NativeType.TRANSIENT_STRING:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 21
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.jruby.ext.ffi.NativeType.UCHAR:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iconst_4
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.jruby.ext.ffi.NativeType.UINT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 8
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.jruby.ext.ffi.NativeType.ULONG:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 12
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.jruby.ext.ffi.NativeType.ULONG_LONG:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 10
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.jruby.ext.ffi.NativeType.USHORT:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 6
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.jruby.ext.ffi.NativeType.VARARGS:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            bipush 22
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.jruby.ext.ffi.NativeType.VOID:Lorg/jruby/ext/ffi/NativeType;
            invokevirtual org.jruby.ext.ffi.NativeType.ordinal:()I
            iconst_1
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            dup
            putstatic org.jruby.ext.ffi.MemoryOp.$SWITCH_TABLE$org$jruby$ext$ffi$NativeType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
}
SourceFile: "MemoryOp.java"
NestMembers:
  org.jruby.ext.ffi.MemoryOp$BooleanOp  org.jruby.ext.ffi.MemoryOp$Float32  org.jruby.ext.ffi.MemoryOp$Float64  org.jruby.ext.ffi.MemoryOp$Mapped  org.jruby.ext.ffi.MemoryOp$PointerOp  org.jruby.ext.ffi.MemoryOp$PrimitiveOp  org.jruby.ext.ffi.MemoryOp$Signed16  org.jruby.ext.ffi.MemoryOp$Signed16Swapped  org.jruby.ext.ffi.MemoryOp$Signed32  org.jruby.ext.ffi.MemoryOp$Signed32Swapped  org.jruby.ext.ffi.MemoryOp$Signed64  org.jruby.ext.ffi.MemoryOp$Signed64Swapped  org.jruby.ext.ffi.MemoryOp$Signed8  org.jruby.ext.ffi.MemoryOp$StructOp  org.jruby.ext.ffi.MemoryOp$Unsigned16  org.jruby.ext.ffi.MemoryOp$Unsigned16Swapped  org.jruby.ext.ffi.MemoryOp$Unsigned32  org.jruby.ext.ffi.MemoryOp$Unsigned32Swapped  org.jruby.ext.ffi.MemoryOp$Unsigned64  org.jruby.ext.ffi.MemoryOp$Unsigned64Swapped  org.jruby.ext.ffi.MemoryOp$Unsigned8
InnerClasses:
  final BooleanOp = org.jruby.ext.ffi.MemoryOp$BooleanOp of org.jruby.ext.ffi.MemoryOp
  final Float32 = org.jruby.ext.ffi.MemoryOp$Float32 of org.jruby.ext.ffi.MemoryOp
  final Float64 = org.jruby.ext.ffi.MemoryOp$Float64 of org.jruby.ext.ffi.MemoryOp
  final Mapped = org.jruby.ext.ffi.MemoryOp$Mapped of org.jruby.ext.ffi.MemoryOp
  final PointerOp = org.jruby.ext.ffi.MemoryOp$PointerOp of org.jruby.ext.ffi.MemoryOp
  abstract PrimitiveOp = org.jruby.ext.ffi.MemoryOp$PrimitiveOp of org.jruby.ext.ffi.MemoryOp
  final Signed16 = org.jruby.ext.ffi.MemoryOp$Signed16 of org.jruby.ext.ffi.MemoryOp
  final Signed16Swapped = org.jruby.ext.ffi.MemoryOp$Signed16Swapped of org.jruby.ext.ffi.MemoryOp
  final Signed32 = org.jruby.ext.ffi.MemoryOp$Signed32 of org.jruby.ext.ffi.MemoryOp
  final Signed32Swapped = org.jruby.ext.ffi.MemoryOp$Signed32Swapped of org.jruby.ext.ffi.MemoryOp
  final Signed64 = org.jruby.ext.ffi.MemoryOp$Signed64 of org.jruby.ext.ffi.MemoryOp
  final Signed64Swapped = org.jruby.ext.ffi.MemoryOp$Signed64Swapped of org.jruby.ext.ffi.MemoryOp
  final Signed8 = org.jruby.ext.ffi.MemoryOp$Signed8 of org.jruby.ext.ffi.MemoryOp
  final StructOp = org.jruby.ext.ffi.MemoryOp$StructOp of org.jruby.ext.ffi.MemoryOp
  final Unsigned16 = org.jruby.ext.ffi.MemoryOp$Unsigned16 of org.jruby.ext.ffi.MemoryOp
  final Unsigned16Swapped = org.jruby.ext.ffi.MemoryOp$Unsigned16Swapped of org.jruby.ext.ffi.MemoryOp
  final Unsigned32 = org.jruby.ext.ffi.MemoryOp$Unsigned32 of org.jruby.ext.ffi.MemoryOp
  final Unsigned32Swapped = org.jruby.ext.ffi.MemoryOp$Unsigned32Swapped of org.jruby.ext.ffi.MemoryOp
  final Unsigned64 = org.jruby.ext.ffi.MemoryOp$Unsigned64 of org.jruby.ext.ffi.MemoryOp
  final Unsigned64Swapped = org.jruby.ext.ffi.MemoryOp$Unsigned64Swapped of org.jruby.ext.ffi.MemoryOp
  final Unsigned8 = org.jruby.ext.ffi.MemoryOp$Unsigned8 of org.jruby.ext.ffi.MemoryOp
  public final Builtin = org.jruby.ext.ffi.Type$Builtin of org.jruby.ext.ffi.Type