revert buffer api change

pull/314/head
Darien Raymond 8 years ago
parent 87a8f7a953
commit 18cd10be2b
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169

@ -16,20 +16,18 @@ const (
// the buffer into an internal buffer pool, in order to recreate a buffer more // the buffer into an internal buffer pool, in order to recreate a buffer more
// quickly. // quickly.
type Buffer struct { type Buffer struct {
head []byte head []byte
pool Pool pool Pool
Value []byte Value []byte
offset int offset int
startingOffset int
} }
func CreateBuffer(container []byte, offset int, parent Pool) *Buffer { func CreateBuffer(container []byte, parent Pool) *Buffer {
b := new(Buffer) b := new(Buffer)
b.head = container b.head = container
b.pool = parent b.pool = parent
b.Value = b.head[offset:] b.Value = b.head[defaultOffset:]
b.offset = offset b.offset = defaultOffset
b.startingOffset = offset
return b return b
} }
@ -49,14 +47,14 @@ func (b *Buffer) Release() {
// Clear clears the content of the buffer, results an empty buffer with // Clear clears the content of the buffer, results an empty buffer with
// Len() = 0. // Len() = 0.
func (b *Buffer) Clear() *Buffer { func (b *Buffer) Clear() *Buffer {
b.offset = b.startingOffset b.offset = defaultOffset
b.Value = b.head[b.offset:b.offset] b.Value = b.head[b.offset:b.offset]
return b return b
} }
// Reset resets this Buffer into its original state. // Reset resets this Buffer into its original state.
func (b *Buffer) Reset() *Buffer { func (b *Buffer) Reset() *Buffer {
b.offset = b.startingOffset b.offset = defaultOffset
b.Value = b.head[b.offset:] b.Value = b.head[b.offset:]
return b return b
} }
@ -221,5 +219,5 @@ func NewBuffer() *Buffer {
//} //}
func NewLocalBuffer(size int) *Buffer { func NewLocalBuffer(size int) *Buffer {
return CreateBuffer(make([]byte, size), defaultOffset, nil) return CreateBuffer(make([]byte, size), nil)
} }

@ -36,7 +36,7 @@ func (p *BufferPool) Allocate() *Buffer {
default: default:
b = p.allocator.Get().([]byte) b = p.allocator.Get().([]byte)
} }
return CreateBuffer(b, defaultOffset, p) return CreateBuffer(b, p)
} }
func (p *BufferPool) Free(buffer *Buffer) { func (p *BufferPool) Free(buffer *Buffer) {

Loading…
Cancel
Save