mirror of
https://github.com/cloudflare/cloudflared.git
synced 2025-07-27 23:19:58 +00:00
TUN-5261: Collect QUIC metrics about RTT, packets and bytes transfered and log events at tracing level
This commit is contained in:
715
vendor/github.com/francoispqt/gojay/decode_number_uint.go
generated
vendored
Normal file
715
vendor/github.com/francoispqt/gojay/decode_number_uint.go
generated
vendored
Normal file
@@ -0,0 +1,715 @@
|
||||
package gojay
|
||||
|
||||
import (
|
||||
"math"
|
||||
)
|
||||
|
||||
// DecodeUint8 reads the next JSON-encoded value from the decoder's input (io.Reader) and stores it in the uint8 pointed to by v.
|
||||
//
|
||||
// See the documentation for Unmarshal for details about the conversion of JSON into a Go value.
|
||||
func (dec *Decoder) DecodeUint8(v *uint8) error {
|
||||
if dec.isPooled == 1 {
|
||||
panic(InvalidUsagePooledDecoderError("Invalid usage of pooled decoder"))
|
||||
}
|
||||
return dec.decodeUint8(v)
|
||||
}
|
||||
|
||||
func (dec *Decoder) decodeUint8(v *uint8) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint8()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*v = val
|
||||
return nil
|
||||
case '-': // if negative, we just set it to 0 and set error
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
func (dec *Decoder) decodeUint8Null(v **uint8) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint8()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint8)
|
||||
}
|
||||
**v = val
|
||||
return nil
|
||||
case '-': // if negative, we just set it to 0 and set error
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint8)
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
|
||||
func (dec *Decoder) getUint8() (uint8, error) {
|
||||
var end = dec.cursor
|
||||
var start = dec.cursor
|
||||
// look for following numbers
|
||||
for j := dec.cursor + 1; j < dec.length || dec.read(); j++ {
|
||||
switch dec.data[j] {
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
end = j
|
||||
continue
|
||||
case ' ', '\n', '\t', '\r':
|
||||
continue
|
||||
case '.', ',', '}', ']':
|
||||
dec.cursor = j
|
||||
return dec.atoui8(start, end), nil
|
||||
}
|
||||
// invalid json we expect numbers, dot (single one), comma, or spaces
|
||||
return 0, dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
return dec.atoui8(start, end), nil
|
||||
}
|
||||
|
||||
// DecodeUint16 reads the next JSON-encoded value from the decoder's input (io.Reader) and stores it in the uint16 pointed to by v.
|
||||
//
|
||||
// See the documentation for Unmarshal for details about the conversion of JSON into a Go value.
|
||||
func (dec *Decoder) DecodeUint16(v *uint16) error {
|
||||
if dec.isPooled == 1 {
|
||||
panic(InvalidUsagePooledDecoderError("Invalid usage of pooled decoder"))
|
||||
}
|
||||
return dec.decodeUint16(v)
|
||||
}
|
||||
|
||||
func (dec *Decoder) decodeUint16(v *uint16) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint16()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
func (dec *Decoder) decodeUint16Null(v **uint16) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint16()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint16)
|
||||
}
|
||||
**v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint16)
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
|
||||
func (dec *Decoder) getUint16() (uint16, error) {
|
||||
var end = dec.cursor
|
||||
var start = dec.cursor
|
||||
// look for following numbers
|
||||
for j := dec.cursor + 1; j < dec.length || dec.read(); j++ {
|
||||
switch dec.data[j] {
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
end = j
|
||||
continue
|
||||
case ' ', '\n', '\t', '\r':
|
||||
continue
|
||||
case '.', ',', '}', ']':
|
||||
dec.cursor = j
|
||||
return dec.atoui16(start, end), nil
|
||||
}
|
||||
// invalid json we expect numbers, dot (single one), comma, or spaces
|
||||
return 0, dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
return dec.atoui16(start, end), nil
|
||||
}
|
||||
|
||||
// DecodeUint32 reads the next JSON-encoded value from the decoder's input (io.Reader) and stores it in the uint32 pointed to by v.
|
||||
//
|
||||
// See the documentation for Unmarshal for details about the conversion of JSON into a Go value.
|
||||
func (dec *Decoder) DecodeUint32(v *uint32) error {
|
||||
if dec.isPooled == 1 {
|
||||
panic(InvalidUsagePooledDecoderError("Invalid usage of pooled decoder"))
|
||||
}
|
||||
return dec.decodeUint32(v)
|
||||
}
|
||||
|
||||
func (dec *Decoder) decodeUint32(v *uint32) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint32()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
func (dec *Decoder) decodeUint32Null(v **uint32) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint32()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint32)
|
||||
}
|
||||
**v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint32)
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
|
||||
func (dec *Decoder) getUint32() (uint32, error) {
|
||||
var end = dec.cursor
|
||||
var start = dec.cursor
|
||||
// look for following numbers
|
||||
for j := dec.cursor + 1; j < dec.length || dec.read(); j++ {
|
||||
switch dec.data[j] {
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
end = j
|
||||
continue
|
||||
case ' ', '\n', '\t', '\r':
|
||||
continue
|
||||
case '.', ',', '}', ']':
|
||||
dec.cursor = j
|
||||
return dec.atoui32(start, end), nil
|
||||
}
|
||||
// invalid json we expect numbers, dot (single one), comma, or spaces
|
||||
return 0, dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
return dec.atoui32(start, end), nil
|
||||
}
|
||||
|
||||
// DecodeUint64 reads the next JSON-encoded value from the decoder's input (io.Reader) and stores it in the uint64 pointed to by v.
|
||||
//
|
||||
// See the documentation for Unmarshal for details about the conversion of JSON into a Go value.
|
||||
func (dec *Decoder) DecodeUint64(v *uint64) error {
|
||||
if dec.isPooled == 1 {
|
||||
panic(InvalidUsagePooledDecoderError("Invalid usage of pooled decoder"))
|
||||
}
|
||||
return dec.decodeUint64(v)
|
||||
}
|
||||
func (dec *Decoder) decodeUint64(v *uint64) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint64()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
func (dec *Decoder) decodeUint64Null(v **uint64) error {
|
||||
for ; dec.cursor < dec.length || dec.read(); dec.cursor++ {
|
||||
switch c := dec.data[dec.cursor]; c {
|
||||
case ' ', '\n', '\t', '\r', ',':
|
||||
continue
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
val, err := dec.getUint64()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint64)
|
||||
}
|
||||
**v = val
|
||||
return nil
|
||||
case '-':
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if *v == nil {
|
||||
*v = new(uint64)
|
||||
}
|
||||
return nil
|
||||
case 'n':
|
||||
dec.cursor++
|
||||
err := dec.assertNull()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
default:
|
||||
dec.err = dec.makeInvalidUnmarshalErr(v)
|
||||
err := dec.skipData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
|
||||
func (dec *Decoder) getUint64() (uint64, error) {
|
||||
var end = dec.cursor
|
||||
var start = dec.cursor
|
||||
// look for following numbers
|
||||
for j := dec.cursor + 1; j < dec.length || dec.read(); j++ {
|
||||
switch dec.data[j] {
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9':
|
||||
end = j
|
||||
continue
|
||||
case ' ', '\n', '\t', '\r', '.', ',', '}', ']':
|
||||
dec.cursor = j
|
||||
return dec.atoui64(start, end), nil
|
||||
}
|
||||
// invalid json we expect numbers, dot (single one), comma, or spaces
|
||||
return 0, dec.raiseInvalidJSONErr(dec.cursor)
|
||||
}
|
||||
return dec.atoui64(start, end), nil
|
||||
}
|
||||
|
||||
func (dec *Decoder) atoui64(start, end int) uint64 {
|
||||
var ll = end + 1 - start
|
||||
var val = uint64(digits[dec.data[start]])
|
||||
end = end + 1
|
||||
if ll < maxUint64Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint64(digits[dec.data[i]])
|
||||
val = (val << 3) + (val << 1) + uintv
|
||||
}
|
||||
} else if ll == maxUint64Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint64(digits[dec.data[i]])
|
||||
if val > maxUint64toMultiply {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val = (val << 3) + (val << 1)
|
||||
if math.MaxUint64-val < uintv {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val += uintv
|
||||
}
|
||||
} else {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
return val
|
||||
}
|
||||
|
||||
func (dec *Decoder) atoui32(start, end int) uint32 {
|
||||
var ll = end + 1 - start
|
||||
var val uint32
|
||||
val = uint32(digits[dec.data[start]])
|
||||
end = end + 1
|
||||
if ll < maxUint32Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint32(digits[dec.data[i]])
|
||||
val = (val << 3) + (val << 1) + uintv
|
||||
}
|
||||
} else if ll == maxUint32Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint32(digits[dec.data[i]])
|
||||
if val > maxUint32toMultiply {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val = (val << 3) + (val << 1)
|
||||
if math.MaxUint32-val < uintv {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val += uintv
|
||||
}
|
||||
} else if ll > maxUint32Length {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
val = 0
|
||||
}
|
||||
return val
|
||||
}
|
||||
|
||||
func (dec *Decoder) atoui16(start, end int) uint16 {
|
||||
var ll = end + 1 - start
|
||||
var val uint16
|
||||
val = uint16(digits[dec.data[start]])
|
||||
end = end + 1
|
||||
if ll < maxUint16Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint16(digits[dec.data[i]])
|
||||
val = (val << 3) + (val << 1) + uintv
|
||||
}
|
||||
} else if ll == maxUint16Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint16(digits[dec.data[i]])
|
||||
if val > maxUint16toMultiply {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val = (val << 3) + (val << 1)
|
||||
if math.MaxUint16-val < uintv {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val += uintv
|
||||
}
|
||||
} else if ll > maxUint16Length {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
val = 0
|
||||
}
|
||||
return val
|
||||
}
|
||||
|
||||
func (dec *Decoder) atoui8(start, end int) uint8 {
|
||||
var ll = end + 1 - start
|
||||
var val uint8
|
||||
val = uint8(digits[dec.data[start]])
|
||||
end = end + 1
|
||||
if ll < maxUint8Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint8(digits[dec.data[i]])
|
||||
val = (val << 3) + (val << 1) + uintv
|
||||
}
|
||||
} else if ll == maxUint8Length {
|
||||
for i := start + 1; i < end; i++ {
|
||||
uintv := uint8(digits[dec.data[i]])
|
||||
if val > maxUint8toMultiply {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val = (val << 3) + (val << 1)
|
||||
if math.MaxUint8-val < uintv {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
return 0
|
||||
}
|
||||
val += uintv
|
||||
}
|
||||
} else if ll > maxUint8Length {
|
||||
dec.err = dec.makeInvalidUnmarshalErr(val)
|
||||
val = 0
|
||||
}
|
||||
return val
|
||||
}
|
||||
|
||||
// Add Values functions
|
||||
|
||||
// AddUint8 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint8, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) AddUint8(v *uint8) error {
|
||||
return dec.Uint8(v)
|
||||
}
|
||||
|
||||
// AddUint8Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint8, an InvalidUnmarshalError error will be returned.
|
||||
// If a `null` is encountered, gojay does not change the value of the pointer.
|
||||
func (dec *Decoder) AddUint8Null(v **uint8) error {
|
||||
return dec.Uint8Null(v)
|
||||
}
|
||||
|
||||
// AddUint16 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint16, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) AddUint16(v *uint16) error {
|
||||
return dec.Uint16(v)
|
||||
}
|
||||
|
||||
// AddUint16Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint16, an InvalidUnmarshalError error will be returned.
|
||||
// If a `null` is encountered, gojay does not change the value of the pointer.
|
||||
func (dec *Decoder) AddUint16Null(v **uint16) error {
|
||||
return dec.Uint16Null(v)
|
||||
}
|
||||
|
||||
// AddUint32 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint32, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) AddUint32(v *uint32) error {
|
||||
return dec.Uint32(v)
|
||||
}
|
||||
|
||||
// AddUint32Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint32, an InvalidUnmarshalError error will be returned.
|
||||
// If a `null` is encountered, gojay does not change the value of the pointer.
|
||||
func (dec *Decoder) AddUint32Null(v **uint32) error {
|
||||
return dec.Uint32Null(v)
|
||||
}
|
||||
|
||||
// AddUint64 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint64, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) AddUint64(v *uint64) error {
|
||||
return dec.Uint64(v)
|
||||
}
|
||||
|
||||
// AddUint64Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint64, an InvalidUnmarshalError error will be returned.
|
||||
// If a `null` is encountered, gojay does not change the value of the pointer.
|
||||
func (dec *Decoder) AddUint64Null(v **uint64) error {
|
||||
return dec.Uint64Null(v)
|
||||
}
|
||||
|
||||
// Uint8 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint8, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint8(v *uint8) error {
|
||||
err := dec.decodeUint8(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint8Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint8, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint8Null(v **uint8) error {
|
||||
err := dec.decodeUint8Null(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint16 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint16, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint16(v *uint16) error {
|
||||
err := dec.decodeUint16(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint16Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint16, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint16Null(v **uint16) error {
|
||||
err := dec.decodeUint16Null(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint32 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint32, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint32(v *uint32) error {
|
||||
err := dec.decodeUint32(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint32Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint32, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint32Null(v **uint32) error {
|
||||
err := dec.decodeUint32Null(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint64 decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint64, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint64(v *uint64) error {
|
||||
err := dec.decodeUint64(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
||||
|
||||
// Uint64Null decodes the JSON value within an object or an array to an *int.
|
||||
// If next key value overflows uint64, an InvalidUnmarshalError error will be returned.
|
||||
func (dec *Decoder) Uint64Null(v **uint64) error {
|
||||
err := dec.decodeUint64Null(v)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
dec.called |= 1
|
||||
return nil
|
||||
}
|
Reference in New Issue
Block a user