diff options
Diffstat (limited to 'internal/bufpool/resize.go')
| -rw-r--r-- | internal/bufpool/resize.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/internal/bufpool/resize.go b/internal/bufpool/resize.go new file mode 100644 index 00000000..78dc1dd7 --- /dev/null +++ b/internal/bufpool/resize.go @@ -0,0 +1,15 @@ +package bufpool + +// Resize adjusts the length of the buffer to n bytes. If n exceeds the current +// capacity, the underlying storage is grown. If n is negative, it is treated +// as zero. +// +// The buffer's new contents beyond the previous length are undefined. +func (buf *Buffer) Resize(n int) { + if n < 0 { + n = 0 + } + + buf.ensureCapacity(n) + buf.buf = buf.buf[:n] +} |
