summaryrefslogtreecommitdiff
path: root/vendor/codeberg.org/gruf/go-store/v2/util/pool.go
blob: dc35dae016680403a16de2274c4c005eb77dcc7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package util

import (
	"codeberg.org/gruf/go-fastpath"
	"codeberg.org/gruf/go-pools"
)

// pathBuilderPool is the global fastpath.Builder pool.
var pathBuilderPool = pools.NewPathBuilderPool(512)

// GetPathBuilder fetches a fastpath.Builder object from the pool.
func GetPathBuilder() *fastpath.Builder {
	return pathBuilderPool.Get()
}

// PutPathBuilder places supplied fastpath.Builder back in the pool.
func PutPathBuilder(pb *fastpath.Builder) {
	pb.Reset()
	pathBuilderPool.Put(pb)
}