spiegel_podman/vendor/github.com/sirupsen/logrus/buffer_pool.go
renovate[bot] b518c41fe9
Update module github.com/sirupsen/logrus to v1.10.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-13 19:51:56 +00:00

37 lines
612 B
Go

package logrus
import (
"bytes"
"sync"
)
var bufferPool BufferPool = &defaultPool{
pool: &sync.Pool{
New: func() any {
return new(bytes.Buffer)
},
},
}
type BufferPool interface {
Put(*bytes.Buffer)
Get() *bytes.Buffer
}
type defaultPool struct {
pool *sync.Pool
}
func (p *defaultPool) Put(buf *bytes.Buffer) {
p.pool.Put(buf)
}
func (p *defaultPool) Get() *bytes.Buffer {
return p.pool.Get().(*bytes.Buffer)
}
// SetBufferPool allows to replace the default logrus buffer pool
// to better meet the specific needs of an application.
func SetBufferPool(bp BufferPool) {
bufferPool = bp
}