abstract class at.yawk.numaec.GenericJoinedBuffer<C> implements at.yawk.numaec.LargeByteBuffer
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: at.yawk.numaec.GenericJoinedBuffer
  super_class: java.lang.Object
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // at.yawk.numaec.GenericJoinedBuffer this
         0: .line 5
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // at.yawk.numaec.GenericJoinedBuffer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;

  abstract C component();
    descriptor: (J)Ljava/lang/Object;
    flags: (0x0400) ACC_ABSTRACT
    Signature: (J)TC;
    MethodParameters:
          Name  Flags
      position  

  abstract long offset(long);
    descriptor: (J)J
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      position  

  long currentRegionStart(long);
    descriptor: (J)J
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // at.yawk.numaec.GenericJoinedBuffer this
        start local 1 // long position
         0: .line 11
            lload 1 /* position */
            aload 0 /* this */
            lload 1 /* position */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.offset:(J)J
            lsub
            lreturn
        end local 1 // long position
        end local 0 // at.yawk.numaec.GenericJoinedBuffer this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0    1     1  position  J
    MethodParameters:
          Name  Flags
      position  

  abstract long nextRegionStart(long);
    descriptor: (J)J
    flags: (0x0400) ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      position  

  abstract void copyLargeToComponent(C, long, at.yawk.numaec.LargeByteBuffer, long, );
    descriptor: (Ljava/lang/Object;JLat/yawk/numaec/LargeByteBuffer;JJ)V
    flags: (0x0400) ACC_ABSTRACT
    Exceptions:
      throws java.lang.IndexOutOfBoundsException, java.lang.UnsupportedOperationException
    Signature: (TC;JLat/yawk/numaec/LargeByteBuffer;JJ)V
    MethodParameters:
           Name  Flags
      dest       
      toIndex    
      src        
      fromIndex  
      length     

  abstract void copyBetweenComponents(C, long, C, long, );
    descriptor: (Ljava/lang/Object;JLjava/lang/Object;JJ)V
    flags: (0x0400) ACC_ABSTRACT
    Exceptions:
      throws java.lang.IndexOutOfBoundsException
    Signature: (TC;JTC;JJ)V
    MethodParameters:
           Name  Flags
      dest       
      toIndex    
      src        
      fromIndex  
      length     

  abstract at.yawk.numaec.GenericJoinedBuffer<C> convertToCompatible(at.yawk.numaec.LargeByteBuffer);
    descriptor: (Lat/yawk/numaec/LargeByteBuffer;)Lat/yawk/numaec/GenericJoinedBuffer;
    flags: (0x0400) ACC_ABSTRACT
    Signature: (Lat/yawk/numaec/LargeByteBuffer;)Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
    MethodParameters:
       Name  Flags
      other  

  public void copyFrom(at.yawk.numaec.LargeByteBuffer, long, long, long);
    descriptor: (Lat/yawk/numaec/LargeByteBuffer;JJJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=20, args_size=5
        start local 0 // at.yawk.numaec.GenericJoinedBuffer this
        start local 1 // at.yawk.numaec.LargeByteBuffer from
        start local 2 // long fromIndex
        start local 4 // long toIndex
        start local 6 // long length
         0: .line 27
            lload 6 /* length */
            lconst_0
            lcmp
            ifge 2
         1: .line 28
            new java.lang.IllegalArgumentException
            dup
            ldc "length < 0"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 30
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* from */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.convertToCompatible:(Lat/yawk/numaec/LargeByteBuffer;)Lat/yawk/numaec/GenericJoinedBuffer;
            astore 8 /* joinedFrom */
        start local 8 // at.yawk.numaec.GenericJoinedBuffer joinedFrom
         3: .line 31
            lload 2 /* fromIndex */
            lload 4 /* toIndex */
            lcmp
            iflt 29
         4: .line 33
            goto 16
         5: .line 34
      StackMap locals: at.yawk.numaec.GenericJoinedBuffer
      StackMap stack:
            aload 0 /* this */
            lload 4 /* toIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.component:(J)Ljava/lang/Object;
            astore 9 /* component */
        start local 9 // java.lang.Object component
         6: .line 35
            aload 0 /* this */
            lload 4 /* toIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.nextRegionStart:(J)J
            lstore 10 /* end */
        start local 10 // long end
         7: .line 36
            lload 10 /* end */
            lload 4 /* toIndex */
            lsub
            lload 6 /* length */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 12 /* toCopy */
        start local 12 // long toCopy
         8: .line 37
            aload 0 /* this */
            lload 4 /* toIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.offset:(J)J
            lstore 14 /* componentToIndex */
        start local 14 // long componentToIndex
         9: .line 38
            aload 8 /* joinedFrom */
            ifnull 12
        10: .line 39
            aload 0 /* this */
            aload 9 /* component */
            lload 14 /* componentToIndex */
            aload 8 /* joinedFrom */
            lload 2 /* fromIndex */
            lload 12 /* toCopy */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyToComponentLtr:(Ljava/lang/Object;JLat/yawk/numaec/GenericJoinedBuffer;JJ)V
        11: .line 40
            goto 13
        12: .line 41
      StackMap locals: at.yawk.numaec.GenericJoinedBuffer at.yawk.numaec.LargeByteBuffer long long long at.yawk.numaec.GenericJoinedBuffer java.lang.Object long long long
      StackMap stack:
            aload 0 /* this */
            aload 9 /* component */
            lload 14 /* componentToIndex */
            aload 1 /* from */
            lload 2 /* fromIndex */
            lload 6 /* length */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyLargeToComponent:(Ljava/lang/Object;JLat/yawk/numaec/LargeByteBuffer;JJ)V
        13: .line 43
      StackMap locals:
      StackMap stack:
            lload 2 /* fromIndex */
            lload 12 /* toCopy */
            ladd
            lstore 2 /* fromIndex */
        14: .line 44
            lload 4 /* toIndex */
            lload 12 /* toCopy */
            ladd
            lstore 4 /* toIndex */
        15: .line 45
            lload 6 /* length */
            lload 12 /* toCopy */
            lsub
            lstore 6 /* length */
        end local 14 // long componentToIndex
        end local 12 // long toCopy
        end local 10 // long end
        end local 9 // java.lang.Object component
        16: .line 33
      StackMap locals: at.yawk.numaec.GenericJoinedBuffer at.yawk.numaec.LargeByteBuffer long long long at.yawk.numaec.GenericJoinedBuffer
      StackMap stack:
            lload 6 /* length */
            lconst_0
            lcmp
            ifgt 5
        17: .line 47
            goto 30
        18: .line 50
      StackMap locals:
      StackMap stack:
            lload 4 /* toIndex */
            lload 6 /* length */
            ladd
            lstore 9 /* toEnd */
        start local 9 // long toEnd
        19: .line 51
            aload 0 /* this */
            lload 9 /* toEnd */
            lconst_1
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.component:(J)Ljava/lang/Object;
            astore 11 /* component */
        start local 11 // java.lang.Object component
        20: .line 52
            aload 0 /* this */
            lload 9 /* toEnd */
            lconst_1
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.currentRegionStart:(J)J
            lstore 12 /* regionStart */
        start local 12 // long regionStart
        21: .line 53
            lload 9 /* toEnd */
            lload 12 /* regionStart */
            lsub
            lload 6 /* length */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 14 /* toCopy */
        start local 14 // long toCopy
        22: .line 54
            lload 2 /* fromIndex */
            lload 6 /* length */
            ladd
            lload 14 /* toCopy */
            lsub
            lstore 16 /* copyFromIndex */
        start local 16 // long copyFromIndex
        23: .line 55
            aload 0 /* this */
            lload 9 /* toEnd */
            lload 14 /* toCopy */
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.offset:(J)J
            lstore 18 /* componentToIndex */
        start local 18 // long componentToIndex
        24: .line 56
            aload 8 /* joinedFrom */
            ifnull 27
        25: .line 57
            aload 0 /* this */
            aload 11 /* component */
            lload 18 /* componentToIndex */
            aload 8 /* joinedFrom */
            lload 16 /* copyFromIndex */
            lload 14 /* toCopy */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyToComponentRtl:(Ljava/lang/Object;JLat/yawk/numaec/GenericJoinedBuffer;JJ)V
        26: .line 58
            goto 28
        27: .line 59
      StackMap locals: at.yawk.numaec.GenericJoinedBuffer at.yawk.numaec.LargeByteBuffer long long long at.yawk.numaec.GenericJoinedBuffer long java.lang.Object long long long long
      StackMap stack:
            aload 0 /* this */
            aload 11 /* component */
            lload 18 /* componentToIndex */
            aload 1 /* from */
            lload 16 /* copyFromIndex */
            lload 14 /* toCopy */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyLargeToComponent:(Ljava/lang/Object;JLat/yawk/numaec/LargeByteBuffer;JJ)V
        28: .line 61
      StackMap locals:
      StackMap stack:
            lload 6 /* length */
            lload 14 /* toCopy */
            lsub
            lstore 6 /* length */
        end local 18 // long componentToIndex
        end local 16 // long copyFromIndex
        end local 14 // long toCopy
        end local 12 // long regionStart
        end local 11 // java.lang.Object component
        end local 9 // long toEnd
        29: .line 49
      StackMap locals: at.yawk.numaec.GenericJoinedBuffer at.yawk.numaec.LargeByteBuffer long long long at.yawk.numaec.GenericJoinedBuffer
      StackMap stack:
            lload 6 /* length */
            lconst_0
            lcmp
            ifgt 18
        30: .line 64
      StackMap locals:
      StackMap stack:
            return
        end local 8 // at.yawk.numaec.GenericJoinedBuffer joinedFrom
        end local 6 // long length
        end local 4 // long toIndex
        end local 2 // long fromIndex
        end local 1 // at.yawk.numaec.LargeByteBuffer from
        end local 0 // at.yawk.numaec.GenericJoinedBuffer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   31     0              this  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0   31     1              from  Lat/yawk/numaec/LargeByteBuffer;
            0   31     2         fromIndex  J
            0   31     4           toIndex  J
            0   31     6            length  J
            3   31     8        joinedFrom  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            6   16     9         component  TC;
            7   16    10               end  J
            8   16    12            toCopy  J
            9   16    14  componentToIndex  J
           19   29     9             toEnd  J
           20   29    11         component  TC;
           21   29    12       regionStart  J
           22   29    14            toCopy  J
           23   29    16     copyFromIndex  J
           24   29    18  componentToIndex  J
    Exceptions:
      throws java.nio.ReadOnlyBufferException, java.lang.UnsupportedOperationException, java.lang.IndexOutOfBoundsException
    MethodParameters:
           Name  Flags
      from       
      fromIndex  
      toIndex    
      length     

  private void copyToComponentLtr(C, long, at.yawk.numaec.GenericJoinedBuffer<C>, long, );
    descriptor: (Ljava/lang/Object;JLat/yawk/numaec/GenericJoinedBuffer;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=6
        start local 0 // at.yawk.numaec.GenericJoinedBuffer this
        start local 1 // java.lang.Object dest
        start local 2 // long toIndex
        start local 4 // at.yawk.numaec.GenericJoinedBuffer src
        start local 5 // long fromIndex
        start local 7 // long length
         0: .line 68
            goto 8
         1: .line 69
      StackMap locals:
      StackMap stack:
            aload 4 /* src */
            lload 5 /* fromIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.component:(J)Ljava/lang/Object;
            astore 9 /* component */
        start local 9 // java.lang.Object component
         2: .line 70
            aload 4 /* src */
            lload 5 /* fromIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.nextRegionStart:(J)J
            lstore 10 /* end */
        start local 10 // long end
         3: .line 71
            lload 10 /* end */
            lload 5 /* fromIndex */
            lsub
            lload 7 /* length */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 12 /* toCopy */
        start local 12 // long toCopy
         4: .line 72
            aload 0 /* this */
            aload 1 /* dest */
            lload 2 /* toIndex */
            aload 9 /* component */
            aload 4 /* src */
            lload 5 /* fromIndex */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.offset:(J)J
            lload 12 /* toCopy */
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyBetweenComponents:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
         5: .line 73
            lload 5 /* fromIndex */
            lload 12 /* toCopy */
            ladd
            lstore 5 /* fromIndex */
         6: .line 74
            lload 2 /* toIndex */
            lload 12 /* toCopy */
            ladd
            lstore 2 /* toIndex */
         7: .line 75
            lload 7 /* length */
            lload 12 /* toCopy */
            lsub
            lstore 7 /* length */
        end local 12 // long toCopy
        end local 10 // long end
        end local 9 // java.lang.Object component
         8: .line 68
      StackMap locals:
      StackMap stack:
            lload 7 /* length */
            lconst_0
            lcmp
            ifgt 1
         9: .line 77
            return
        end local 7 // long length
        end local 5 // long fromIndex
        end local 4 // at.yawk.numaec.GenericJoinedBuffer src
        end local 2 // long toIndex
        end local 1 // java.lang.Object dest
        end local 0 // at.yawk.numaec.GenericJoinedBuffer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0   10     1       dest  TC;
            0   10     2    toIndex  J
            0   10     4        src  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0   10     5  fromIndex  J
            0   10     7     length  J
            2    8     9  component  TC;
            3    8    10        end  J
            4    8    12     toCopy  J
    Signature: (TC;JLat/yawk/numaec/GenericJoinedBuffer<TC;>;JJ)V
    MethodParameters:
           Name  Flags
      dest       
      toIndex    
      src        
      fromIndex  
      length     

  private void copyToComponentRtl(C, long, at.yawk.numaec.GenericJoinedBuffer<C>, long, );
    descriptor: (Ljava/lang/Object;JLat/yawk/numaec/GenericJoinedBuffer;JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=16, args_size=6
        start local 0 // at.yawk.numaec.GenericJoinedBuffer this
        start local 1 // java.lang.Object dest
        start local 2 // long toIndex
        start local 4 // at.yawk.numaec.GenericJoinedBuffer src
        start local 5 // long fromIndex
        start local 7 // long length
         0: .line 81
            goto 9
         1: .line 82
      StackMap locals:
      StackMap stack:
            lload 5 /* fromIndex */
            lload 7 /* length */
            ladd
            lstore 9 /* fromEnd */
        start local 9 // long fromEnd
         2: .line 83
            aload 4 /* src */
            lload 9 /* fromEnd */
            lconst_1
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.component:(J)Ljava/lang/Object;
            astore 11 /* component */
        start local 11 // java.lang.Object component
         3: .line 84
            aload 4 /* src */
            lload 9 /* fromEnd */
            lconst_1
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.currentRegionStart:(J)J
            lstore 12 /* regionStart */
        start local 12 // long regionStart
         4: .line 85
            lload 9 /* fromEnd */
            lload 12 /* regionStart */
            lsub
            lload 7 /* length */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 14 /* toCopy */
        start local 14 // long toCopy
         5: .line 86
            aload 0 /* this */
         6: .line 87
            aload 1 /* dest */
            lload 2 /* toIndex */
            lload 7 /* length */
            ladd
            lload 14 /* toCopy */
            lsub
            aload 11 /* component */
            aload 4 /* src */
            lload 9 /* fromEnd */
            lload 14 /* toCopy */
            lsub
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.offset:(J)J
            lload 14 /* toCopy */
         7: .line 86
            invokevirtual at.yawk.numaec.GenericJoinedBuffer.copyBetweenComponents:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
         8: .line 88
            lload 7 /* length */
            lload 14 /* toCopy */
            lsub
            lstore 7 /* length */
        end local 14 // long toCopy
        end local 12 // long regionStart
        end local 11 // java.lang.Object component
        end local 9 // long fromEnd
         9: .line 81
      StackMap locals:
      StackMap stack:
            lload 7 /* length */
            lconst_0
            lcmp
            ifgt 1
        10: .line 90
            return
        end local 7 // long length
        end local 5 // long fromIndex
        end local 4 // at.yawk.numaec.GenericJoinedBuffer src
        end local 2 // long toIndex
        end local 1 // java.lang.Object dest
        end local 0 // at.yawk.numaec.GenericJoinedBuffer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0   11     1         dest  TC;
            0   11     2      toIndex  J
            0   11     4          src  Lat/yawk/numaec/GenericJoinedBuffer<TC;>;
            0   11     5    fromIndex  J
            0   11     7       length  J
            2    9     9      fromEnd  J
            3    9    11    component  TC;
            4    9    12  regionStart  J
            5    9    14       toCopy  J
    Signature: (TC;JLat/yawk/numaec/GenericJoinedBuffer<TC;>;JJ)V
    MethodParameters:
           Name  Flags
      dest       
      toIndex    
      src        
      fromIndex  
      length     
}
Signature: <C:Ljava/lang/Object;>Ljava/lang/Object;Lat/yawk/numaec/LargeByteBuffer;
SourceFile: "GenericJoinedBuffer.java"