char get();
void get(Array<char> *array);
void position(int32_t newPosition);
+ void releaseArray() {buffer = NULL;}
Array<char> *array();
-private:
+ ~ByteBuffer() {if (buffer != NULL) delete buffer;}
+
+ private:
+ ByteBuffer(Array<char> *array);
+ friend ByteBuffer *ByteBuffer_wrap(Array<char> *array);
+ friend ByteBuffer *ByteBuffer_allocate(uint size);
+ Array<char> *buffer;
+ uint offset;
};
ByteBuffer *ByteBuffer_wrap(Array<char> *array);
ByteBuffer *ByteBuffer_allocate(uint size);