]> Cypherpunks.ru repositories - gostls13.git/commit
bufio: add Writer.AvailableBuffer
authorJoe Tsai <joetsai@digital-static.net>
Wed, 4 Aug 2021 08:22:45 +0000 (01:22 -0700)
committerJoe Tsai <joetsai@digital-static.net>
Sun, 12 Sep 2021 01:06:53 +0000 (01:06 +0000)
commit0d8a4bfc962a606584be0a76ed708f86b44164c7
tree11f8b6ff6d48e57bd0b9101fc0eeaccf554a0dff
parent23832ba2e2fb396cda1dacf3e8afcb38ec36dcba
bufio: add Writer.AvailableBuffer

This adds a new Writer.AvailableBuffer method that returns
an empty buffer with a possibly non-empty capacity for use
with append-like APIs.

The typical usage pattern is something like:
b := bw.AvailableBuffer()
b = appendValue(b, v)
bw.Write(b)

It allows logic combining append-like APIs with bufio.Writer to avoid
needing to allocate and manage buffers themselves and allows the
append-like APIs to directly write into the buffer for a bufio.Writer.

Fixes #47527

Change-Id: I9cd169f3f8e8c7cd40818caf3daf1944c826fc66
Reviewed-on: https://go-review.googlesource.com/c/go/+/345569
Trust: Joe Tsai <joetsai@digital-static.net>
Run-TryBot: Joe Tsai <joetsai@digital-static.net>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/bufio/bufio.go
src/bufio/bufio_test.go
src/bufio/example_test.go