code: public ByteArray slice( int index, int length )
      {
          int oldLimit = bb.limit();
          bb.position( index );
          bb.limit( index + length );
          IoBuffer slice = bb.slice();
          bb.limit( oldLimit );
          return new BufferByteArray( slice )
          {
  
              @Override
              public void free()
              {
                  // Do nothing.
              }
          };
      }
docs: @inheritDoc
  
  Calling <code>free()</code> on the returned slice has no effect.