mirror of
https://github.com/cloudflare/cloudflared.git
synced 2025-07-27 22:29:57 +00:00
TUN-5261: Collect QUIC metrics about RTT, packets and bytes transfered and log events at tracing level
This commit is contained in:
164
vendor/github.com/francoispqt/gojay/encode_bool.go
generated
vendored
Normal file
164
vendor/github.com/francoispqt/gojay/encode_bool.go
generated
vendored
Normal file
@@ -0,0 +1,164 @@
|
||||
package gojay
|
||||
|
||||
import "strconv"
|
||||
|
||||
// EncodeBool encodes a bool to JSON
|
||||
func (enc *Encoder) EncodeBool(v bool) error {
|
||||
if enc.isPooled == 1 {
|
||||
panic(InvalidUsagePooledEncoderError("Invalid usage of pooled encoder"))
|
||||
}
|
||||
_, _ = enc.encodeBool(v)
|
||||
_, err := enc.Write()
|
||||
if err != nil {
|
||||
enc.err = err
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// encodeBool encodes a bool to JSON
|
||||
func (enc *Encoder) encodeBool(v bool) ([]byte, error) {
|
||||
enc.grow(5)
|
||||
if v {
|
||||
enc.writeString("true")
|
||||
} else {
|
||||
enc.writeString("false")
|
||||
}
|
||||
return enc.buf, enc.err
|
||||
}
|
||||
|
||||
// AddBool adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) AddBool(v bool) {
|
||||
enc.Bool(v)
|
||||
}
|
||||
|
||||
// AddBoolOmitEmpty adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) AddBoolOmitEmpty(v bool) {
|
||||
enc.BoolOmitEmpty(v)
|
||||
}
|
||||
|
||||
// AddBoolNullEmpty adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) AddBoolNullEmpty(v bool) {
|
||||
enc.BoolNullEmpty(v)
|
||||
}
|
||||
|
||||
// AddBoolKey adds a bool to be encoded, must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) AddBoolKey(key string, v bool) {
|
||||
enc.BoolKey(key, v)
|
||||
}
|
||||
|
||||
// AddBoolKeyOmitEmpty adds a bool to be encoded and skips if it is zero value.
|
||||
// Must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) AddBoolKeyOmitEmpty(key string, v bool) {
|
||||
enc.BoolKeyOmitEmpty(key, v)
|
||||
}
|
||||
|
||||
// AddBoolKeyNullEmpty adds a bool to be encoded and encodes `null` if it is zero value.
|
||||
// Must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) AddBoolKeyNullEmpty(key string, v bool) {
|
||||
enc.BoolKeyNullEmpty(key, v)
|
||||
}
|
||||
|
||||
// Bool adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) Bool(v bool) {
|
||||
enc.grow(5)
|
||||
r := enc.getPreviousRune()
|
||||
if r != '[' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
if v {
|
||||
enc.writeString("true")
|
||||
} else {
|
||||
enc.writeString("false")
|
||||
}
|
||||
}
|
||||
|
||||
// BoolOmitEmpty adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) BoolOmitEmpty(v bool) {
|
||||
if v == false {
|
||||
return
|
||||
}
|
||||
enc.grow(5)
|
||||
r := enc.getPreviousRune()
|
||||
if r != '[' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
enc.writeString("true")
|
||||
}
|
||||
|
||||
// BoolNullEmpty adds a bool to be encoded, must be used inside a slice or array encoding (does not encode a key)
|
||||
func (enc *Encoder) BoolNullEmpty(v bool) {
|
||||
enc.grow(5)
|
||||
r := enc.getPreviousRune()
|
||||
if r != '[' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
if v == false {
|
||||
enc.writeBytes(nullBytes)
|
||||
return
|
||||
}
|
||||
enc.writeString("true")
|
||||
}
|
||||
|
||||
// BoolKey adds a bool to be encoded, must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) BoolKey(key string, value bool) {
|
||||
if enc.hasKeys {
|
||||
if !enc.keyExists(key) {
|
||||
return
|
||||
}
|
||||
}
|
||||
enc.grow(5 + len(key))
|
||||
r := enc.getPreviousRune()
|
||||
if r != '{' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
enc.writeByte('"')
|
||||
enc.writeStringEscape(key)
|
||||
enc.writeBytes(objKey)
|
||||
enc.buf = strconv.AppendBool(enc.buf, value)
|
||||
}
|
||||
|
||||
// BoolKeyOmitEmpty adds a bool to be encoded and skips it if it is zero value.
|
||||
// Must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) BoolKeyOmitEmpty(key string, v bool) {
|
||||
if enc.hasKeys {
|
||||
if !enc.keyExists(key) {
|
||||
return
|
||||
}
|
||||
}
|
||||
if v == false {
|
||||
return
|
||||
}
|
||||
enc.grow(5 + len(key))
|
||||
r := enc.getPreviousRune()
|
||||
if r != '{' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
enc.writeByte('"')
|
||||
enc.writeStringEscape(key)
|
||||
enc.writeBytes(objKey)
|
||||
enc.buf = strconv.AppendBool(enc.buf, v)
|
||||
}
|
||||
|
||||
// BoolKeyNullEmpty adds a bool to be encoded and skips it if it is zero value.
|
||||
// Must be used inside an object as it will encode a key.
|
||||
func (enc *Encoder) BoolKeyNullEmpty(key string, v bool) {
|
||||
if enc.hasKeys {
|
||||
if !enc.keyExists(key) {
|
||||
return
|
||||
}
|
||||
}
|
||||
enc.grow(5 + len(key))
|
||||
r := enc.getPreviousRune()
|
||||
if r != '{' {
|
||||
enc.writeByte(',')
|
||||
}
|
||||
enc.writeByte('"')
|
||||
enc.writeStringEscape(key)
|
||||
enc.writeBytes(objKey)
|
||||
if v == false {
|
||||
enc.writeBytes(nullBytes)
|
||||
return
|
||||
}
|
||||
enc.buf = strconv.AppendBool(enc.buf, v)
|
||||
}
|
Reference in New Issue
Block a user