mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
35 lines
905 B
Go
35 lines
905 B
Go
|
// Copyright © 2013-14 Steve Francia <spf@spf13.com>.
|
||
|
//
|
||
|
// Licensed under the Simple Public License, Version 2.0 (the "License");
|
||
|
// you may not use this file except in compliance with the License.
|
||
|
// You may obtain a copy of the License at
|
||
|
// http://opensource.org/licenses/Simple-2.0
|
||
|
//
|
||
|
// Unless required by applicable law or agreed to in writing, software
|
||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
// See the License for the specific language governing permissions and
|
||
|
// limitations under the License.
|
||
|
|
||
|
package bufferpool
|
||
|
|
||
|
import (
|
||
|
"bytes"
|
||
|
"sync"
|
||
|
)
|
||
|
|
||
|
var bufferPool = &sync.Pool{
|
||
|
New: func() interface{} {
|
||
|
return &bytes.Buffer{}
|
||
|
},
|
||
|
}
|
||
|
|
||
|
func GetBuffer() (buf *bytes.Buffer) {
|
||
|
return bufferPool.Get().(*bytes.Buffer)
|
||
|
}
|
||
|
|
||
|
func PutBuffer(buf *bytes.Buffer) {
|
||
|
buf.Reset()
|
||
|
bufferPool.Put(buf)
|
||
|
}
|