mirror of
https://github.com/GoogleContainerTools/kaniko
synced 2026-10-01 11:21:39 +02:00
``` * use go 1.17 semantics in go.mod * pin tonistiigi/fsutil dep to match docker/docker's dep go get -u ./... go mod vendor ```
31 lines
594 B
Go
31 lines
594 B
Go
package json
|
|
|
|
import (
|
|
"bytes"
|
|
)
|
|
|
|
// Encoder is JSON encoder that supports construction of JSON values
|
|
// using methods.
|
|
type Encoder struct {
|
|
w *bytes.Buffer
|
|
Value
|
|
}
|
|
|
|
// NewEncoder returns a new JSON encoder
|
|
func NewEncoder() *Encoder {
|
|
writer := bytes.NewBuffer(nil)
|
|
scratch := make([]byte, 64)
|
|
|
|
return &Encoder{w: writer, Value: newValue(writer, &scratch)}
|
|
}
|
|
|
|
// String returns the String output of the JSON encoder
|
|
func (e Encoder) String() string {
|
|
return e.w.String()
|
|
}
|
|
|
|
// Bytes returns the []byte slice of the JSON encoder
|
|
func (e Encoder) Bytes() []byte {
|
|
return e.w.Bytes()
|
|
}
|