Skip to content
This repository has been archived by the owner on Oct 17, 2018. It is now read-only.

Commit

Permalink
Embed bytes buffer in the buffered encoder
Browse files Browse the repository at this point in the history
  • Loading branch information
xichen2020 committed Mar 14, 2017
1 parent bb0fd6c commit 09592f0
Showing 1 changed file with 6 additions and 9 deletions.
15 changes: 6 additions & 9 deletions protocol/msgpack/buffered_encoder.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import (
type bufferedEncoder struct {
*msgpack.Encoder

buf *bytes.Buffer
buf bytes.Buffer
closed bool
pool BufferedEncoderPool
}
Expand All @@ -41,16 +41,13 @@ func NewBufferedEncoder() BufferedEncoder {

// NewPooledBufferedEncoder creates a new pooled buffered encoder
func NewPooledBufferedEncoder(p BufferedEncoderPool) BufferedEncoder {
buf := bytes.NewBuffer(nil)
return &bufferedEncoder{
Encoder: msgpack.NewEncoder(buf),
buf: buf,
closed: false,
pool: p,
}
var enc bufferedEncoder
enc.Encoder = msgpack.NewEncoder(&enc.buf)
enc.pool = p
return &enc
}

func (enc *bufferedEncoder) Buffer() *bytes.Buffer { return enc.buf }
func (enc *bufferedEncoder) Buffer() *bytes.Buffer { return &enc.buf }

func (enc *bufferedEncoder) Bytes() []byte { return enc.buf.Bytes() }

Expand Down

0 comments on commit 09592f0

Please sign in to comment.