diff --git a/codec/0doc.go b/codec/0doc.go index 661dfd85..fbd57567 100644 --- a/codec/0doc.go +++ b/codec/0doc.go @@ -225,11 +225,11 @@ package codec // - In Go 1.10, when mid-stack inlining is enabled, // we should use committed functions for writeXXX and readXXX calls. // This involves uncommenting the methods for decReaderSwitch and encWriterSwitch -// and using those (decReaderSwitch and encWriterSwitch in all handles +// and using those (decReaderSwitch and encWriterSwitch) in all handles // instead of encWriter and decReader. -// - removing conditionals used to avoid calling no-op functions via interface calls. -// esep, etc. -// It *should* make the code cleaner, and maybe more performant, -// as conditional branches are expensive. -// However, per https://groups.google.com/forum/#!topic/golang-nuts/DNELyNnTzFA , -// there is no optimization if calling an empty function via an interface. +// The benefit is that, for the (En|De)coder over []byte, the encWriter/decReader +// will be inlined, giving a performance bump for that typical case. +// However, it will only be inlined if mid-stack inlining is enabled, +// as we call panic to raise errors, and panic currently prevents inlining. +// - Clean up comments in the codebase +// Remove all unnecesssary comments, so code is clean. diff --git a/codec/binc.go b/codec/binc.go index 9a69e436..98d5d64f 100644 --- a/codec/binc.go +++ b/codec/binc.go @@ -57,13 +57,15 @@ const ( type bincEncDriver struct { e *Encoder + h *BincHandle w encWriter m map[string]uint16 // symbols b [scratchByteArrayLen]byte s uint16 // symbols sequencer - // encNoSeparator - encDriverNoopContainerWriter + // c containerState + encDriverTrackContainerWriter noBuiltInTypes + // encNoSeparator } // func (e *bincEncDriver) IsBuiltinType(rt uintptr) bool { @@ -201,13 +203,19 @@ func (e *bincEncDriver) encodeExtPreamble(xtag byte, length int) { func (e *bincEncDriver) WriteArrayStart(length int) { e.encLen(bincVdArray<<4, uint64(length)) + e.c = containerArrayStart } func (e *bincEncDriver) WriteMapStart(length int) { e.encLen(bincVdMap<<4, uint64(length)) + e.c = containerMapStart } func (e *bincEncDriver) EncodeString(c charEncoding, v string) { + if e.c == containerMapKey && c == cUTF8 && (e.h.AsSymbols == 0 || e.h.AsSymbols == 1) { + e.EncodeSymbol(v) + return + } l := uint64(len(v)) e.encBytesLen(c, l) if l > 0 { @@ -522,34 +530,22 @@ func (d *bincDecDriver) decCheckInteger() (ui uint64, neg bool) { return } -func (d *bincDecDriver) DecodeInt(bitsize uint8) (i int64) { +func (d *bincDecDriver) DecodeInt64() (i int64) { ui, neg := d.decCheckInteger() - i, overflow := chkOvf.SignedInt(ui) - if overflow { - d.d.errorf("simple: overflow converting %v to signed integer", ui) - return - } + i = chkOvf.SignedIntV(ui) if neg { i = -i } - if chkOvf.Int(i, bitsize) { - d.d.errorf("binc: overflow integer: %v for num bits: %v", i, bitsize) - return - } d.bdRead = false return } -func (d *bincDecDriver) DecodeUint(bitsize uint8) (ui uint64) { +func (d *bincDecDriver) DecodeUint64() (ui uint64) { ui, neg := d.decCheckInteger() if neg { d.d.errorf("Assigning negative signed value to unsigned type") return } - if chkOvf.Uint(ui, bitsize) { - d.d.errorf("binc: overflow integer: %v", ui) - return - } d.bdRead = false return } @@ -576,7 +572,7 @@ func (d *bincDecDriver) DecodeFloat64() (f float64) { } else if vd == bincVdFloat { f = d.decFloat() } else { - f = float64(d.DecodeInt(64)) + f = float64(d.DecodeInt64()) } d.bdRead = false return @@ -932,6 +928,26 @@ type BincHandle struct { BasicHandle binaryEncodingType noElemSeparators + + // AsSymbols defines what should be encoded as symbols. + // + // Encoding as symbols can reduce the encoded size significantly. + // + // However, during decoding, each string to be encoded as a symbol must + // be checked to see if it has been seen before. Consequently, encoding time + // will increase if using symbols, because string comparisons has a clear cost. + // + // Values: + // - 0: default: library uses best judgement + // - 1: use symbols + // - 2: do not use symbols + AsSymbols byte + + // AsSymbols: may later on introduce more options ... + // - m: map keys + // - s: struct fields + // - n: none + // - a: all: same as m, s, ... } // Name returns the name of the handle: binc @@ -943,7 +959,7 @@ func (h *BincHandle) SetBytesExt(rt reflect.Type, tag uint64, ext BytesExt) (err } func (h *BincHandle) newEncDriver(e *Encoder) encDriver { - return &bincEncDriver{e: e, w: e.w} + return &bincEncDriver{e: e, h: h, w: e.w} } func (h *BincHandle) newDecDriver(d *Decoder) decDriver { @@ -959,6 +975,7 @@ func (h *BincHandle) newDecDriver(d *Decoder) decDriver { func (e *bincEncDriver) reset() { e.w = e.e.w e.s = 0 + e.c = 0 e.m = nil } diff --git a/codec/cbor.go b/codec/cbor.go index 3ec5e4fc..dcbadf66 100644 --- a/codec/cbor.go +++ b/codec/cbor.go @@ -193,9 +193,9 @@ func (e *cborEncDriver) WriteArrayEnd() { } } -func (e *cborEncDriver) EncodeSymbol(v string) { - e.encStringBytesS(cborBaseString, v) -} +// func (e *cborEncDriver) EncodeSymbol(v string) { +// e.encStringBytesS(cborBaseString, v) +// } func (e *cborEncDriver) EncodeString(c charEncoding, v string) { e.encStringBytesS(cborBaseString, v) @@ -350,41 +350,25 @@ func (d *cborDecDriver) decCheckInteger() (neg bool) { return } -func (d *cborDecDriver) DecodeInt(bitsize uint8) (i int64) { +func (d *cborDecDriver) DecodeInt64() (i int64) { neg := d.decCheckInteger() ui := d.decUint() // check if this number can be converted to an int without overflow - var overflow bool if neg { - if i, overflow = chkOvf.SignedInt(ui + 1); overflow { - d.d.errorf("cbor: overflow converting %v to signed integer", ui+1) - return - } - i = -i + i = -(chkOvf.SignedIntV(ui + 1)) } else { - if i, overflow = chkOvf.SignedInt(ui); overflow { - d.d.errorf("cbor: overflow converting %v to signed integer", ui) - return - } - } - if chkOvf.Int(i, bitsize) { - d.d.errorf("cbor: overflow integer: %v", i) - return + i = chkOvf.SignedIntV(ui) } d.bdRead = false return } -func (d *cborDecDriver) DecodeUint(bitsize uint8) (ui uint64) { +func (d *cborDecDriver) DecodeUint64() (ui uint64) { if d.decCheckInteger() { d.d.errorf("Assigning negative signed value to unsigned type") return } ui = d.decUint() - if chkOvf.Uint(ui, bitsize) { - d.d.errorf("cbor: overflow integer: %v", ui) - return - } d.bdRead = false return } @@ -400,7 +384,7 @@ func (d *cborDecDriver) DecodeFloat64() (f float64) { } else if bd == cborBdFloat64 { f = math.Float64frombits(bigen.Uint64(d.r.readx(8))) } else if bd >= cborBaseUint && bd < cborBaseBytes { - f = float64(d.DecodeInt(64)) + f = float64(d.DecodeInt64()) } else { d.d.errorf("Float only valid from float16/32/64: Invalid descriptor: %v", bd) return @@ -458,7 +442,7 @@ func (d *cborDecDriver) decAppendIndefiniteBytes(bs []byte) []byte { break } if major := d.bd >> 5; major != cborMajorBytes && major != cborMajorText { - d.d.errorf("cbor: expect bytes or string major type in indefinite string/bytes; got: %v, byte: %v", major, d.bd) + d.d.errorf("expect bytes or string major type in indefinite string/bytes; got: %v, byte: %v", major, d.bd) return nil } n := d.decLen() @@ -553,12 +537,12 @@ func (d *cborDecDriver) decodeTime(xtag uint64) (t time.Time) { f1, f2 := math.Modf(d.DecodeFloat64()) t = time.Unix(int64(f1), int64(f2*1e9)) case d.bd >= cborBaseUint && d.bd < cborBaseNegInt, d.bd >= cborBaseNegInt && d.bd < cborBaseBytes: - t = time.Unix(d.DecodeInt(64), 0) + t = time.Unix(d.DecodeInt64(), 0) default: - d.d.errorf("cbor: time.Time can only be decoded from a number (or RFC3339 string)") + d.d.errorf("time.Time can only be decoded from a number (or RFC3339 string)") } default: - d.d.errorf("cbor: invalid tag for time.Time - expecting 0 or 1, got 0x%x", xtag) + d.d.errorf("invalid tag for time.Time - expecting 0 or 1, got 0x%x", xtag) } t = t.UTC().Round(time.Microsecond) return @@ -624,14 +608,14 @@ func (d *cborDecDriver) DecodeNaked() { case d.bd >= cborBaseUint && d.bd < cborBaseNegInt: if d.h.SignedInteger { n.v = valueTypeInt - n.i = d.DecodeInt(64) + n.i = d.DecodeInt64() } else { n.v = valueTypeUint - n.u = d.DecodeUint(64) + n.u = d.DecodeUint64() } case d.bd >= cborBaseNegInt && d.bd < cborBaseBytes: n.v = valueTypeInt - n.i = d.DecodeInt(64) + n.i = d.DecodeInt64() case d.bd >= cborBaseBytes && d.bd < cborBaseString: n.v = valueTypeBytes n.l = d.DecodeBytes(nil, false) diff --git a/codec/codec_test.go b/codec/codec_test.go index ef6255be..26805559 100644 --- a/codec/codec_test.go +++ b/codec/codec_test.go @@ -346,8 +346,8 @@ func testInit() { // pre-fill them first bh.EncodeOptions = testEncodeOptions bh.DecodeOptions = testDecodeOptions - // bh.InterfaceReset = true // TODO: remove - // bh.PreferArrayOverSlice = true // TODO: remove + // bh.InterfaceReset = true + // bh.PreferArrayOverSlice = true // modify from flag'ish things bh.InternString = testInternStr bh.Canonical = testCanonical @@ -1878,8 +1878,6 @@ func doTestLargeContainerLen(t *testing.T, h Handle) { testUnmarshalErr(m2, bs, h, t, "-") testDeepEqualErr(m, m2, t, "-") - // TODO: skip rest if 32-bit - // do same tests for large strings (encoded as symbols or not) // skip if 32-bit or not using unsafe mode if safeMode || (32<<(^uint(0)>>63)) < 64 { @@ -1891,10 +1889,11 @@ func doTestLargeContainerLen(t *testing.T, h Handle) { // to do this, we create a simple one-field struct, // use use flags to switch from symbols to non-symbols - bh := h.getBasicHandle() - oldAsSymbols := bh.AsSymbols - defer func() { bh.AsSymbols = oldAsSymbols }() - + hbinc, okbinc := h.(*BincHandle) + if okbinc { + oldAsSymbols := hbinc.AsSymbols + defer func() { hbinc.AsSymbols = oldAsSymbols }() + } var out []byte = make([]byte, 0, math.MaxUint16*3/2) var in []byte = make([]byte, math.MaxUint16*3/2) for i := range in { @@ -1915,7 +1914,9 @@ func doTestLargeContainerLen(t *testing.T, h Handle) { // fmt.Printf("testcontainerlen: large string: i: %v, |%s|\n", i, s1) m1[s1] = true - bh.AsSymbols = AsSymbolNone + if okbinc { + hbinc.AsSymbols = 2 + } out = out[:0] e.ResetBytes(&out) e.MustEncode(m1) @@ -1924,15 +1925,17 @@ func doTestLargeContainerLen(t *testing.T, h Handle) { testUnmarshalErr(m2, out, h, t, "no-symbols") testDeepEqualErr(m1, m2, t, "no-symbols") - // now, do as symbols - bh.AsSymbols = AsSymbolAll - out = out[:0] - e.ResetBytes(&out) - e.MustEncode(m1) - // bs, _ = testMarshalErr(m1, h, t, "-") - m2 = make(map[string]bool, 1) - testUnmarshalErr(m2, out, h, t, "symbols") - testDeepEqualErr(m1, m2, t, "symbols") + if okbinc { + // now, do as symbols + hbinc.AsSymbols = 1 + out = out[:0] + e.ResetBytes(&out) + e.MustEncode(m1) + // bs, _ = testMarshalErr(m1, h, t, "-") + m2 = make(map[string]bool, 1) + testUnmarshalErr(m2, out, h, t, "symbols") + testDeepEqualErr(m1, m2, t, "symbols") + } } } diff --git a/codec/decode.go b/codec/decode.go index 71a2d41b..2ac891dd 100644 --- a/codec/decode.go +++ b/codec/decode.go @@ -27,6 +27,8 @@ var ( errmsgExpandSliceOverflow = "expand slice: slice overflow" errmsgExpandSliceCannotChange = "expand slice: cannot change" + errDecoderNotInitialized = errors.New("Decoder not initialized") + errDecUnreadByteNothingToRead = errors.New("cannot unread - nothing has been read") errDecUnreadByteLastByteNotRead = errors.New("cannot unread - last byte has not been read") errDecUnreadByteUnknown = errors.New("cannot unread - reason unknown") @@ -80,8 +82,12 @@ type decDriver interface { // kInterface will extract the detached byte slice if it has to pass it outside its realm. DecodeNaked() - DecodeInt(bitsize uint8) (i int64) - DecodeUint(bitsize uint8) (ui uint64) + // Deprecated: use DecodeInt64 and DecodeUint64 instead + // DecodeInt(bitsize uint8) (i int64) + // DecodeUint(bitsize uint8) (ui uint64) + + DecodeInt64() (i int64) + DecodeUint64() (ui uint64) DecodeFloat64() (f float64) DecodeBool() (b bool) @@ -1076,7 +1082,7 @@ func (d *Decoder) kInterfaceNaked(f *codecFnInfo) (rvn reflect.Value) { case valueTypeTime: rvn = n.rr[decNakedTimeIdx] // d.np.get(&n.t) default: - panic(fmt.Errorf("kInterfaceNaked: unexpected valueType: %d", n.v)) + panicv.errorf("kInterfaceNaked: unexpected valueType: %d", n.v) } return } @@ -1131,19 +1137,35 @@ func (d *Decoder) kInterface(f *codecFnInfo, rv reflect.Value) { } func decStructFieldKey(dd decDriver, keyType valueType, b *[scratchByteArrayLen]byte) (rvkencname []byte) { - switch keyType { - case valueTypeString: - rvkencname = (dd.DecodeStringAsBytes()) - case valueTypeInt: - rvkencname = (strconv.AppendInt(b[:0], dd.DecodeInt(64), 10)) - case valueTypeUint: - rvkencname = (strconv.AppendUint(b[:0], dd.DecodeUint(64), 10)) - case valueTypeFloat: - rvkencname = (strconv.AppendFloat(b[:0], dd.DecodeFloat64(), 'f', -1, 64)) - default: // string - rvkencname = (dd.DecodeStringAsBytes()) - } - return + // use if-else-if, not switch (which compiles to binary-search) + // since keyType is typically valueTypeString, branch prediction is pretty good. + + if keyType == valueTypeString { + rvkencname = dd.DecodeStringAsBytes() + } else if keyType == valueTypeInt { + rvkencname = strconv.AppendInt(b[:0], dd.DecodeInt64(), 10) + } else if keyType == valueTypeUint { + rvkencname = strconv.AppendUint(b[:0], dd.DecodeUint64(), 10) + } else if keyType == valueTypeFloat { + rvkencname = strconv.AppendFloat(b[:0], dd.DecodeFloat64(), 'f', -1, 64) + } else { + rvkencname = dd.DecodeStringAsBytes() + } + return rvkencname + + // switch keyType { + // case valueTypeString: + // return dd.DecodeStringAsBytes() + // case valueTypeInt: + // return strconv.AppendInt(b[:0], dd.DecodeInt64(), 10) + // case valueTypeUint: + // return strconv.AppendUint(b[:0], dd.DecodeUint64(), 10) + // case valueTypeFloat: + // return strconv.AppendFloat(b[:0], dd.DecodeFloat64(), 'f', -1, 64) + // // default: // string + // // return dd.DecodeStringAsBytes() + // } + // return dd.DecodeStringAsBytes() } func (d *Decoder) kStruct(f *codecFnInfo, rv reflect.Value) { @@ -1846,7 +1868,7 @@ func NewDecoderBytes(in []byte, h Handle) *Decoder { var defaultDecNaked decNaked func newDecoder(h Handle) *Decoder { - d := &Decoder{hh: h, h: h.getBasicHandle()} + d := &Decoder{hh: h, h: h.getBasicHandle(), err: errDecoderNotInitialized} d.be = h.isBinary() // NOTE: do not initialize d.n here. It is lazily initialized in d.naked() var jh *JsonHandle @@ -2154,25 +2176,25 @@ func (d *Decoder) decode(iv interface{}) { case *bool: *v = d.d.DecodeBool() case *int: - *v = int(d.d.DecodeInt(intBitsize)) + *v = int(chkOvf.IntV(d.d.DecodeInt64(), intBitsize)) case *int8: - *v = int8(d.d.DecodeInt(8)) + *v = int8(chkOvf.IntV(d.d.DecodeInt64(), 8)) case *int16: - *v = int16(d.d.DecodeInt(16)) + *v = int16(chkOvf.IntV(d.d.DecodeInt64(), 16)) case *int32: - *v = int32(d.d.DecodeInt(32)) + *v = int32(chkOvf.IntV(d.d.DecodeInt64(), 32)) case *int64: - *v = d.d.DecodeInt(64) + *v = d.d.DecodeInt64() case *uint: - *v = uint(d.d.DecodeUint(uintBitsize)) + *v = uint(chkOvf.UintV(d.d.DecodeUint64(), uintBitsize)) case *uint8: - *v = uint8(d.d.DecodeUint(8)) + *v = uint8(chkOvf.UintV(d.d.DecodeUint64(), 8)) case *uint16: - *v = uint16(d.d.DecodeUint(16)) + *v = uint16(chkOvf.UintV(d.d.DecodeUint64(), 16)) case *uint32: - *v = uint32(d.d.DecodeUint(32)) + *v = uint32(chkOvf.UintV(d.d.DecodeUint64(), 32)) case *uint64: - *v = d.d.DecodeUint(64) + *v = d.d.DecodeUint64() case *float32: f64 := d.d.DecodeFloat64() if chkOvf.Float32(f64) { diff --git a/codec/encode.go b/codec/encode.go index f0b18cac..a4cf48ef 100644 --- a/codec/encode.go +++ b/codec/encode.go @@ -20,25 +20,25 @@ const defEncByteBufSize = 1 << 6 // 4:16, 6:64, 8:256, 10:1024 var errEncoderNotInitialized = errors.New("Encoder not initialized") -// AsSymbolFlag defines what should be encoded as symbols. -type AsSymbolFlag uint8 +// // AsSymbolFlag defines what should be encoded as symbols. +// type AsSymbolFlag uint8 -const ( - // AsSymbolDefault means only encode struct field names as symbols. - AsSymbolDefault AsSymbolFlag = iota +// const ( +// // AsSymbolDefault means only encode struct field names as symbols. +// AsSymbolDefault AsSymbolFlag = iota - // AsSymbolAll means encode anything which could be a symbol as a symbol. - AsSymbolAll = 0xfe +// // AsSymbolAll means encode anything which could be a symbol as a symbol. +// AsSymbolAll = 0xfe - // AsSymbolNone means do not encode anything as a symbol. - AsSymbolNone = 1 << iota +// // AsSymbolNone means do not encode anything as a symbol. +// AsSymbolNone = 1 << iota - // AsSymbolMapStringKeysFlag means encode keys in map[string]XXX as symbols. - AsSymbolMapStringKeysFlag +// // AsSymbolMapStringKeysFlag means encode keys in map[string]XXX as symbols. +// AsSymbolMapStringKeysFlag - // AsSymbolStructFieldNameFlag means encode struct field names as symbols. - AsSymbolStructFieldNameFlag -) +// // AsSymbolStructFieldNameFlag means encode struct field names as symbols. +// AsSymbolStructFieldNameFlag +// ) // encWriter abstracts writing to a byte array or to an io.Writer. type encWriter interface { @@ -53,8 +53,8 @@ type encWriter interface { type encDriver interface { // IsBuiltinType(rt uintptr) bool - // Deprecated: left here for now so that old codecgen'ed filed will work. TODO: remove. - EncodeBuiltin(rt uintptr, v interface{}) + // Deprecated: left here for now so that old codecgen'ed filed will work. + // EncodeBuiltin(rt uintptr, v interface{}) EncodeNil() EncodeInt(i int64) @@ -65,6 +65,12 @@ type encDriver interface { // encodeExtPreamble(xtag byte, length int) EncodeRawExt(re *RawExt, e *Encoder) EncodeExt(v interface{}, xtag uint64, ext Ext, e *Encoder) + EncodeString(c charEncoding, v string) + // EncodeSymbol(v string) + EncodeStringBytes(c charEncoding, v []byte) + EncodeTime(time.Time) + //encBignum(f *big.Int) + //encStringRunes(c charEncoding, v []rune) WriteArrayStart(length int) WriteArrayElem() WriteArrayEnd() @@ -72,13 +78,6 @@ type encDriver interface { WriteMapElemKey() WriteMapElemValue() WriteMapEnd() - EncodeString(c charEncoding, v string) - EncodeSymbol(v string) - EncodeStringBytes(c charEncoding, v []byte) - EncodeTime(time.Time) - //TODO - //encBignum(f *big.Int) - //encStringRunes(c charEncoding, v []rune) reset() atEndOfEncode() @@ -103,6 +102,19 @@ func (encDriverNoopContainerWriter) WriteMapElemValue() {} func (encDriverNoopContainerWriter) WriteMapEnd() {} func (encDriverNoopContainerWriter) atEndOfEncode() {} +type encDriverTrackContainerWriter struct { + c containerState +} + +func (e *encDriverTrackContainerWriter) WriteArrayStart(length int) { e.c = containerArrayStart } +func (e *encDriverTrackContainerWriter) WriteArrayElem() { e.c = containerArrayElem } +func (e *encDriverTrackContainerWriter) WriteArrayEnd() { e.c = containerArrayEnd } +func (e *encDriverTrackContainerWriter) WriteMapStart(length int) { e.c = containerMapStart } +func (e *encDriverTrackContainerWriter) WriteMapElemKey() { e.c = containerMapKey } +func (e *encDriverTrackContainerWriter) WriteMapElemValue() { e.c = containerMapValue } +func (e *encDriverTrackContainerWriter) WriteMapEnd() { e.c = containerMapEnd } +func (e *encDriverTrackContainerWriter) atEndOfEncode() {} + // type ioEncWriterWriter interface { // WriteByte(c byte) error // WriteString(s string) (n int, err error) @@ -152,20 +164,20 @@ type EncodeOptions struct { // If unset, we error out. Raw bool - // AsSymbols defines what should be encoded as symbols. - // - // Encoding as symbols can reduce the encoded size significantly. - // - // However, during decoding, each string to be encoded as a symbol must - // be checked to see if it has been seen before. Consequently, encoding time - // will increase if using symbols, because string comparisons has a clear cost. - // - // Sample values: - // AsSymbolNone - // AsSymbolAll - // AsSymbolMapStringKeys - // AsSymbolMapStringKeysFlag | AsSymbolStructFieldNameFlag - AsSymbols AsSymbolFlag + // // AsSymbols defines what should be encoded as symbols. + // // + // // Encoding as symbols can reduce the encoded size significantly. + // // + // // However, during decoding, each string to be encoded as a symbol must + // // be checked to see if it has been seen before. Consequently, encoding time + // // will increase if using symbols, because string comparisons has a clear cost. + // // + // // Sample values: + // // AsSymbolNone + // // AsSymbolAll + // // AsSymbolMapStringKeys + // // AsSymbolMapStringKeysFlag | AsSymbolStructFieldNameFlag + // AsSymbols AsSymbolFlag // WriterBufferSize is the size of the buffer used when writing. // @@ -422,7 +434,6 @@ func (e *Encoder) kSlice(f *codecFnInfo, rv reflect.Value) { if rtelem.Kind() != reflect.Interface { fn = e.cf.get(rtelem, true, true) } - // TODO: Consider perf implication of encoding odd index values as symbols if type is string for j := 0; j < l; j++ { if elemsep { if ti.mbs { @@ -468,17 +479,19 @@ func (e *Encoder) kStructNoOmitempty(f *codecFnInfo, rv reflect.Value) { if toMap { ee.WriteMapStart(len(tisfi)) // asSymbols := e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 - asSymbols := e.h.AsSymbols == AsSymbolDefault || e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 + // asSymbols := e.h.AsSymbols == AsSymbolDefault || e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 if elemsep { for _, si := range tisfi { ee.WriteMapElemKey() - encStructFieldKey(ee, fti.keyType, si.encName, asSymbols) + // ee.EncodeString(cUTF8, si.encName) + encStructFieldKey(ee, fti.keyType, si.encName) ee.WriteMapElemValue() e.encodeValue(sfn.field(si), nil, true) } } else { for _, si := range tisfi { - encStructFieldKey(ee, fti.keyType, si.encName, asSymbols) + // ee.EncodeString(cUTF8, si.encName) + encStructFieldKey(ee, fti.keyType, si.encName) e.encodeValue(sfn.field(si), nil, true) } } @@ -499,28 +512,36 @@ func (e *Encoder) kStructNoOmitempty(f *codecFnInfo, rv reflect.Value) { } } -func encStructFieldKey(ee encDriver, keyType valueType, s string, asSymbols bool) { +func encStructFieldKey(ee encDriver, keyType valueType, s string) { var m must - switch keyType { - case valueTypeString: - if asSymbols { - ee.EncodeSymbol(s) - } else { - ee.EncodeString(cUTF8, s) - } - case valueTypeInt: + + // use if-else-if, not switch (which compiles to binary-search) + // since keyType is typically valueTypeString, branch prediction is pretty good. + + if keyType == valueTypeString { + ee.EncodeString(cUTF8, s) + } else if keyType == valueTypeInt { ee.EncodeInt(m.Int(strconv.ParseInt(s, 10, 64))) - case valueTypeUint: + } else if keyType == valueTypeUint { ee.EncodeUint(m.Uint(strconv.ParseUint(s, 10, 64))) - case valueTypeFloat: + } else if keyType == valueTypeFloat { ee.EncodeFloat64(m.Float(strconv.ParseFloat(s, 64))) - default: // string - if asSymbols { - ee.EncodeSymbol(s) - } else { - ee.EncodeString(cUTF8, s) - } + } else { + ee.EncodeString(cUTF8, s) } + + // switch keyType { + // case valueTypeString: + // ee.EncodeString(cUTF8, s) + // case valueTypeInt: + // ee.EncodeInt(m.Int(strconv.ParseInt(s, 10, 64))) + // case valueTypeUint: + // ee.EncodeUint(m.Uint(strconv.ParseUint(s, 10, 64))) + // case valueTypeFloat: + // ee.EncodeFloat64(m.Float(strconv.ParseFloat(s, 64))) + // default: // string + // ee.EncodeString(cUTF8, s) + // } } func (e *Encoder) kStruct(f *codecFnInfo, rv reflect.Value) { @@ -598,19 +619,21 @@ func (e *Encoder) kStruct(f *codecFnInfo, rv reflect.Value) { if toMap { ee.WriteMapStart(newlen) // asSymbols := e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 - asSymbols := e.h.AsSymbols == AsSymbolDefault || e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 + // asSymbols := e.h.AsSymbols == AsSymbolDefault || e.h.AsSymbols&AsSymbolStructFieldNameFlag != 0 if elemsep { for j := 0; j < newlen; j++ { kv = fkvs[j] ee.WriteMapElemKey() - encStructFieldKey(ee, fti.keyType, kv.v, asSymbols) + // ee.EncodeString(cUTF8, kv.v) + encStructFieldKey(ee, fti.keyType, kv.v) ee.WriteMapElemValue() e.encodeValue(kv.r, nil, true) } } else { for j := 0; j < newlen; j++ { kv = fkvs[j] - encStructFieldKey(ee, fti.keyType, kv.v, asSymbols) + // ee.EncodeString(cUTF8, kv.v) + encStructFieldKey(ee, fti.keyType, kv.v) e.encodeValue(kv.r, nil, true) } } @@ -652,7 +675,7 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) { ee.WriteMapEnd() return } - var asSymbols bool + // var asSymbols bool // determine the underlying key and val encFn's for the map. // This eliminates some work which is done for each loop iteration i.e. // rv.Type(), ref.ValueOf(rt).Pointer(), then check map/list for fn. @@ -676,14 +699,14 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) { mks := rv.MapKeys() if e.h.Canonical { - e.kMapCanonical(rtkey, rv, mks, valFn, asSymbols) + e.kMapCanonical(rtkey, rv, mks, valFn) ee.WriteMapEnd() return } var keyTypeIsString = stringTypId == rt2id(rtkey0) // rtkeyid if keyTypeIsString { - asSymbols = e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 + // asSymbols = e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 } else { for rtkey.Kind() == reflect.Ptr { rtkey = rtkey.Elem() @@ -700,11 +723,7 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) { ee.WriteMapElemKey() } if keyTypeIsString { - if asSymbols { - ee.EncodeSymbol(mks[j].String()) - } else { - ee.EncodeString(cUTF8, mks[j].String()) - } + ee.EncodeString(cUTF8, mks[j].String()) } else { e.encodeValue(mks[j], keyFn, true) } @@ -717,7 +736,7 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) { ee.WriteMapEnd() } -func (e *Encoder) kMapCanonical(rtkey reflect.Type, rv reflect.Value, mks []reflect.Value, valFn *codecFn, asSymbols bool) { +func (e *Encoder) kMapCanonical(rtkey reflect.Type, rv reflect.Value, mks []reflect.Value, valFn *codecFn) { ee := e.e elemsep := e.esep // we previously did out-of-band if an extension was registered. @@ -776,11 +795,7 @@ func (e *Encoder) kMapCanonical(rtkey reflect.Type, rv reflect.Value, mks []refl if elemsep { ee.WriteMapElemKey() } - if asSymbols { - ee.EncodeSymbol(mksv[i].v) - } else { - ee.EncodeString(cUTF8, mksv[i].v) - } + ee.EncodeString(cUTF8, mksv[i].v) if elemsep { ee.WriteMapElemValue() } diff --git a/codec/fast-path.generated.go b/codec/fast-path.generated.go index 1250a2e7..87f2562f 100644 --- a/codec/fast-path.generated.go +++ b/codec/fast-path.generated.go @@ -1457,7 +1457,7 @@ func fastpathEncodeTypeSwitch(iv interface{}, e *Encoder) bool { fastpathTV.EncMapBoolBoolV(*v, e) default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -1479,11 +1479,15 @@ func (_ fastpathT) EncSliceIntfV(v []interface{}, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + e.encode(v2) + } + } else { + for _, v2 := range v { + e.encode(v2) } - e.encode(v2) } ee.WriteArrayEnd() } @@ -1494,15 +1498,19 @@ func (_ fastpathT) EncAsMapSliceIntfV(v []interface{}, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + e.encode(v2) + } + } else { + for _, v2 := range v { + e.encode(v2) } - e.encode(v2) } ee.WriteMapEnd() } @@ -1521,11 +1529,15 @@ func (_ fastpathT) EncSliceStringV(v []string, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeString(cUTF8, v2) + } + } else { + for _, v2 := range v { + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } ee.WriteArrayEnd() } @@ -1536,15 +1548,19 @@ func (_ fastpathT) EncAsMapSliceStringV(v []string, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeString(cUTF8, v2) + } + } else { + for _, v2 := range v { + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } ee.WriteMapEnd() } @@ -1563,11 +1579,15 @@ func (_ fastpathT) EncSliceFloat32V(v []float32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeFloat32(v2) + } + } else { + for _, v2 := range v { + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } ee.WriteArrayEnd() } @@ -1578,15 +1598,19 @@ func (_ fastpathT) EncAsMapSliceFloat32V(v []float32, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeFloat32(v2) + } + } else { + for _, v2 := range v { + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } ee.WriteMapEnd() } @@ -1605,11 +1629,15 @@ func (_ fastpathT) EncSliceFloat64V(v []float64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeFloat64(v2) + } + } else { + for _, v2 := range v { + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } ee.WriteArrayEnd() } @@ -1620,15 +1648,19 @@ func (_ fastpathT) EncAsMapSliceFloat64V(v []float64, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeFloat64(v2) + } + } else { + for _, v2 := range v { + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } ee.WriteMapEnd() } @@ -1647,11 +1679,15 @@ func (_ fastpathT) EncSliceUintV(v []uint, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteArrayEnd() } @@ -1662,15 +1698,19 @@ func (_ fastpathT) EncAsMapSliceUintV(v []uint, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteMapEnd() } @@ -1689,11 +1729,15 @@ func (_ fastpathT) EncSliceUint8V(v []uint8, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteArrayEnd() } @@ -1704,15 +1748,19 @@ func (_ fastpathT) EncAsMapSliceUint8V(v []uint8, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteMapEnd() } @@ -1731,11 +1779,15 @@ func (_ fastpathT) EncSliceUint16V(v []uint16, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteArrayEnd() } @@ -1746,15 +1798,19 @@ func (_ fastpathT) EncAsMapSliceUint16V(v []uint16, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteMapEnd() } @@ -1773,11 +1829,15 @@ func (_ fastpathT) EncSliceUint32V(v []uint32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteArrayEnd() } @@ -1788,15 +1848,19 @@ func (_ fastpathT) EncAsMapSliceUint32V(v []uint32, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteMapEnd() } @@ -1815,11 +1879,15 @@ func (_ fastpathT) EncSliceUint64V(v []uint64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteArrayEnd() } @@ -1830,15 +1898,19 @@ func (_ fastpathT) EncAsMapSliceUint64V(v []uint64, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeUint(uint64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } ee.WriteMapEnd() } @@ -1857,11 +1929,15 @@ func (_ fastpathT) EncSliceUintptrV(v []uintptr, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + e.encode(v2) + } + } else { + for _, v2 := range v { + e.encode(v2) } - e.encode(v2) } ee.WriteArrayEnd() } @@ -1872,15 +1948,19 @@ func (_ fastpathT) EncAsMapSliceUintptrV(v []uintptr, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + e.encode(v2) + } + } else { + for _, v2 := range v { + e.encode(v2) } - e.encode(v2) } ee.WriteMapEnd() } @@ -1899,11 +1979,15 @@ func (_ fastpathT) EncSliceIntV(v []int, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteArrayEnd() } @@ -1914,15 +1998,19 @@ func (_ fastpathT) EncAsMapSliceIntV(v []int, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteMapEnd() } @@ -1941,11 +2029,15 @@ func (_ fastpathT) EncSliceInt8V(v []int8, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteArrayEnd() } @@ -1956,15 +2048,19 @@ func (_ fastpathT) EncAsMapSliceInt8V(v []int8, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteMapEnd() } @@ -1983,11 +2079,15 @@ func (_ fastpathT) EncSliceInt16V(v []int16, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteArrayEnd() } @@ -1998,15 +2098,19 @@ func (_ fastpathT) EncAsMapSliceInt16V(v []int16, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteMapEnd() } @@ -2025,11 +2129,15 @@ func (_ fastpathT) EncSliceInt32V(v []int32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteArrayEnd() } @@ -2040,15 +2148,19 @@ func (_ fastpathT) EncAsMapSliceInt32V(v []int32, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteMapEnd() } @@ -2067,11 +2179,15 @@ func (_ fastpathT) EncSliceInt64V(v []int64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteArrayEnd() } @@ -2082,15 +2198,19 @@ func (_ fastpathT) EncAsMapSliceInt64V(v []int64, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeInt(int64(v2)) + } + } else { + for _, v2 := range v { + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } ee.WriteMapEnd() } @@ -2109,11 +2229,15 @@ func (_ fastpathT) EncSliceBoolV(v []bool, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) - for _, v2 := range v { - if esep { + if esep { + for _, v2 := range v { ee.WriteArrayElem() + ee.EncodeBool(v2) + } + } else { + for _, v2 := range v { + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } ee.WriteArrayEnd() } @@ -2124,15 +2248,19 @@ func (_ fastpathT) EncAsMapSliceBoolV(v []bool, e *Encoder) { return } ee.WriteMapStart(len(v) / 2) - for j, v2 := range v { - if esep { + if esep { + for j, v2 := range v { if j%2 == 0 { ee.WriteMapElemKey() } else { ee.WriteMapElemValue() } + ee.EncodeBool(v2) + } + } else { + for _, v2 := range v { + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } ee.WriteMapEnd() } @@ -2162,26 +2290,32 @@ func (_ fastpathT) EncMapIntfIntfV(v map[interface{}]interface{}, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -2212,26 +2346,32 @@ func (_ fastpathT) EncMapIntfStringV(v map[interface{}]string, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -2262,26 +2402,32 @@ func (_ fastpathT) EncMapIntfUintV(v map[interface{}]uint, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -2312,26 +2458,32 @@ func (_ fastpathT) EncMapIntfUint8V(v map[interface{}]uint8, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -2362,26 +2514,32 @@ func (_ fastpathT) EncMapIntfUint16V(v map[interface{}]uint16, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -2412,26 +2570,32 @@ func (_ fastpathT) EncMapIntfUint32V(v map[interface{}]uint32, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -2462,26 +2626,32 @@ func (_ fastpathT) EncMapIntfUint64V(v map[interface{}]uint64, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -2512,26 +2682,32 @@ func (_ fastpathT) EncMapIntfUintptrV(v map[interface{}]uintptr, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -2562,26 +2738,32 @@ func (_ fastpathT) EncMapIntfIntV(v map[interface{}]int, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -2612,26 +2794,32 @@ func (_ fastpathT) EncMapIntfInt8V(v map[interface{}]int8, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -2662,26 +2850,32 @@ func (_ fastpathT) EncMapIntfInt16V(v map[interface{}]int16, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -2712,26 +2906,32 @@ func (_ fastpathT) EncMapIntfInt32V(v map[interface{}]int32, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -2762,26 +2962,32 @@ func (_ fastpathT) EncMapIntfInt64V(v map[interface{}]int64, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -2812,26 +3018,32 @@ func (_ fastpathT) EncMapIntfFloat32V(v map[interface{}]float32, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -2862,26 +3074,32 @@ func (_ fastpathT) EncMapIntfFloat64V(v map[interface{}]float64, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -2912,26 +3130,32 @@ func (_ fastpathT) EncMapIntfBoolV(v map[interface{}]bool, e *Encoder) { i++ } sort.Sort(bytesISlice(v2)) - for j := range v2 { - if esep { + if esep { + for j := range v2 { ee.WriteMapElemKey() - } - e.asis(v2[j].v) - if esep { + e.asis(v2[j].v) ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) } - e.encode(v[v2[j].i]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -2947,7 +3171,6 @@ func (_ fastpathT) EncMapStringIntfV(v map[string]interface{}, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -2956,34 +3179,32 @@ func (_ fastpathT) EncMapStringIntfV(v map[string]interface{}, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + e.encode(v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + e.encode(v[string(k2)]) } - e.encode(v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -2999,7 +3220,6 @@ func (_ fastpathT) EncMapStringStringV(v map[string]string, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3008,34 +3228,32 @@ func (_ fastpathT) EncMapStringStringV(v map[string]string, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeString(cUTF8, v[string(k2)]) } - ee.EncodeString(cUTF8, v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -3051,7 +3269,6 @@ func (_ fastpathT) EncMapStringUintV(v map[string]uint, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3060,34 +3277,32 @@ func (_ fastpathT) EncMapStringUintV(v map[string]uint, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v[string(k2)])) } - ee.EncodeUint(uint64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3103,7 +3318,6 @@ func (_ fastpathT) EncMapStringUint8V(v map[string]uint8, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3112,34 +3326,32 @@ func (_ fastpathT) EncMapStringUint8V(v map[string]uint8, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v[string(k2)])) } - ee.EncodeUint(uint64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3155,7 +3367,6 @@ func (_ fastpathT) EncMapStringUint16V(v map[string]uint16, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3164,34 +3375,32 @@ func (_ fastpathT) EncMapStringUint16V(v map[string]uint16, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v[string(k2)])) } - ee.EncodeUint(uint64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3207,7 +3416,6 @@ func (_ fastpathT) EncMapStringUint32V(v map[string]uint32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3216,34 +3424,32 @@ func (_ fastpathT) EncMapStringUint32V(v map[string]uint32, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v[string(k2)])) } - ee.EncodeUint(uint64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3259,7 +3465,6 @@ func (_ fastpathT) EncMapStringUint64V(v map[string]uint64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3268,34 +3473,32 @@ func (_ fastpathT) EncMapStringUint64V(v map[string]uint64, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v[string(k2)])) } - ee.EncodeUint(uint64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3311,7 +3514,6 @@ func (_ fastpathT) EncMapStringUintptrV(v map[string]uintptr, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3320,34 +3522,32 @@ func (_ fastpathT) EncMapStringUintptrV(v map[string]uintptr, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + e.encode(v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + e.encode(v[string(k2)]) } - e.encode(v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -3363,7 +3563,6 @@ func (_ fastpathT) EncMapStringIntV(v map[string]int, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3372,34 +3571,32 @@ func (_ fastpathT) EncMapStringIntV(v map[string]int, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v[string(k2)])) } - ee.EncodeInt(int64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -3415,7 +3612,6 @@ func (_ fastpathT) EncMapStringInt8V(v map[string]int8, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3424,34 +3620,32 @@ func (_ fastpathT) EncMapStringInt8V(v map[string]int8, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v[string(k2)])) } - ee.EncodeInt(int64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -3467,7 +3661,6 @@ func (_ fastpathT) EncMapStringInt16V(v map[string]int16, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3476,34 +3669,32 @@ func (_ fastpathT) EncMapStringInt16V(v map[string]int16, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v[string(k2)])) } - ee.EncodeInt(int64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -3519,7 +3710,6 @@ func (_ fastpathT) EncMapStringInt32V(v map[string]int32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3528,34 +3718,32 @@ func (_ fastpathT) EncMapStringInt32V(v map[string]int32, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v[string(k2)])) } - ee.EncodeInt(int64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -3571,7 +3759,6 @@ func (_ fastpathT) EncMapStringInt64V(v map[string]int64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3580,34 +3767,32 @@ func (_ fastpathT) EncMapStringInt64V(v map[string]int64, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v[string(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v[string(k2)])) } - ee.EncodeInt(int64(v[string(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -3623,7 +3808,6 @@ func (_ fastpathT) EncMapStringFloat32V(v map[string]float32, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3632,34 +3816,32 @@ func (_ fastpathT) EncMapStringFloat32V(v map[string]float32, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeFloat32(v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeFloat32(v[string(k2)]) } - ee.EncodeFloat32(v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -3675,7 +3857,6 @@ func (_ fastpathT) EncMapStringFloat64V(v map[string]float64, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3684,34 +3865,32 @@ func (_ fastpathT) EncMapStringFloat64V(v map[string]float64, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeFloat64(v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeFloat64(v[string(k2)]) } - ee.EncodeFloat64(v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -3727,7 +3906,6 @@ func (_ fastpathT) EncMapStringBoolV(v map[string]bool, e *Encoder) { } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 if e.h.Canonical { v2 := make([]string, len(v)) var i int @@ -3736,34 +3914,32 @@ func (_ fastpathT) EncMapStringBoolV(v map[string]bool, e *Encoder) { i++ } sort.Sort(stringSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeBool(v[string(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeString(cUTF8, k2) + ee.EncodeBool(v[string(k2)]) } - ee.EncodeBool(v[string(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - if asSymbols { - ee.EncodeSymbol(k2) - } else { ee.EncodeString(cUTF8, k2) - } - if esep { ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeString(cUTF8, k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -3787,26 +3963,32 @@ func (_ fastpathT) EncMapFloat32IntfV(v map[float32]interface{}, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + e.encode(v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + e.encode(v[float32(k2)]) } - e.encode(v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -3830,26 +4012,32 @@ func (_ fastpathT) EncMapFloat32StringV(v map[float32]string, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeString(cUTF8, v[float32(k2)]) } - ee.EncodeString(cUTF8, v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -3873,26 +4061,32 @@ func (_ fastpathT) EncMapFloat32UintV(v map[float32]uint, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeUint(uint64(v[float32(k2)])) } - ee.EncodeUint(uint64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3916,26 +4110,32 @@ func (_ fastpathT) EncMapFloat32Uint8V(v map[float32]uint8, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeUint(uint64(v[float32(k2)])) } - ee.EncodeUint(uint64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -3959,26 +4159,32 @@ func (_ fastpathT) EncMapFloat32Uint16V(v map[float32]uint16, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeUint(uint64(v[float32(k2)])) } - ee.EncodeUint(uint64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4002,26 +4208,32 @@ func (_ fastpathT) EncMapFloat32Uint32V(v map[float32]uint32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeUint(uint64(v[float32(k2)])) } - ee.EncodeUint(uint64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4045,26 +4257,32 @@ func (_ fastpathT) EncMapFloat32Uint64V(v map[float32]uint64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeUint(uint64(v[float32(k2)])) } - ee.EncodeUint(uint64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4088,26 +4306,32 @@ func (_ fastpathT) EncMapFloat32UintptrV(v map[float32]uintptr, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + e.encode(v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + e.encode(v[float32(k2)]) } - e.encode(v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -4131,26 +4355,32 @@ func (_ fastpathT) EncMapFloat32IntV(v map[float32]int, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeInt(int64(v[float32(k2)])) } - ee.EncodeInt(int64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4174,26 +4404,32 @@ func (_ fastpathT) EncMapFloat32Int8V(v map[float32]int8, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeInt(int64(v[float32(k2)])) } - ee.EncodeInt(int64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4217,26 +4453,32 @@ func (_ fastpathT) EncMapFloat32Int16V(v map[float32]int16, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeInt(int64(v[float32(k2)])) } - ee.EncodeInt(int64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4260,26 +4502,32 @@ func (_ fastpathT) EncMapFloat32Int32V(v map[float32]int32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeInt(int64(v[float32(k2)])) } - ee.EncodeInt(int64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4303,26 +4551,32 @@ func (_ fastpathT) EncMapFloat32Int64V(v map[float32]int64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeInt(int64(v[float32(k2)])) } - ee.EncodeInt(int64(v[float32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4346,26 +4600,32 @@ func (_ fastpathT) EncMapFloat32Float32V(v map[float32]float32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeFloat32(v[float32(k2)]) } - ee.EncodeFloat32(v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -4389,26 +4649,32 @@ func (_ fastpathT) EncMapFloat32Float64V(v map[float32]float64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeFloat64(v[float32(k2)]) } - ee.EncodeFloat64(v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -4432,26 +4698,32 @@ func (_ fastpathT) EncMapFloat32BoolV(v map[float32]bool, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat32(float32(k2)) - if esep { + ee.EncodeFloat32(float32(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v[float32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat32(float32(k2)) + ee.EncodeBool(v[float32(k2)]) } - ee.EncodeBool(v[float32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat32(k2) - if esep { + ee.EncodeFloat32(k2) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat32(k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -4475,26 +4747,32 @@ func (_ fastpathT) EncMapFloat64IntfV(v map[float64]interface{}, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + e.encode(v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + e.encode(v[float64(k2)]) } - e.encode(v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -4518,26 +4796,32 @@ func (_ fastpathT) EncMapFloat64StringV(v map[float64]string, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeString(cUTF8, v[float64(k2)]) } - ee.EncodeString(cUTF8, v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -4561,26 +4845,32 @@ func (_ fastpathT) EncMapFloat64UintV(v map[float64]uint, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeUint(uint64(v[float64(k2)])) } - ee.EncodeUint(uint64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4604,26 +4894,32 @@ func (_ fastpathT) EncMapFloat64Uint8V(v map[float64]uint8, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeUint(uint64(v[float64(k2)])) } - ee.EncodeUint(uint64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4647,26 +4943,32 @@ func (_ fastpathT) EncMapFloat64Uint16V(v map[float64]uint16, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeUint(uint64(v[float64(k2)])) } - ee.EncodeUint(uint64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4690,26 +4992,32 @@ func (_ fastpathT) EncMapFloat64Uint32V(v map[float64]uint32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeUint(uint64(v[float64(k2)])) } - ee.EncodeUint(uint64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4733,26 +5041,32 @@ func (_ fastpathT) EncMapFloat64Uint64V(v map[float64]uint64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeUint(uint64(v[float64(k2)])) } - ee.EncodeUint(uint64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -4776,26 +5090,32 @@ func (_ fastpathT) EncMapFloat64UintptrV(v map[float64]uintptr, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + e.encode(v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + e.encode(v[float64(k2)]) } - e.encode(v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -4819,26 +5139,32 @@ func (_ fastpathT) EncMapFloat64IntV(v map[float64]int, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeInt(int64(v[float64(k2)])) } - ee.EncodeInt(int64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4862,26 +5188,32 @@ func (_ fastpathT) EncMapFloat64Int8V(v map[float64]int8, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeInt(int64(v[float64(k2)])) } - ee.EncodeInt(int64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4905,26 +5237,32 @@ func (_ fastpathT) EncMapFloat64Int16V(v map[float64]int16, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeInt(int64(v[float64(k2)])) } - ee.EncodeInt(int64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4948,26 +5286,32 @@ func (_ fastpathT) EncMapFloat64Int32V(v map[float64]int32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeInt(int64(v[float64(k2)])) } - ee.EncodeInt(int64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -4991,26 +5335,32 @@ func (_ fastpathT) EncMapFloat64Int64V(v map[float64]int64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[float64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeInt(int64(v[float64(k2)])) } - ee.EncodeInt(int64(v[float64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5034,26 +5384,32 @@ func (_ fastpathT) EncMapFloat64Float32V(v map[float64]float32, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeFloat32(v[float64(k2)]) } - ee.EncodeFloat32(v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -5077,26 +5433,32 @@ func (_ fastpathT) EncMapFloat64Float64V(v map[float64]float64, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeFloat64(v[float64(k2)]) } - ee.EncodeFloat64(v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -5120,26 +5482,32 @@ func (_ fastpathT) EncMapFloat64BoolV(v map[float64]bool, e *Encoder) { i++ } sort.Sort(floatSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeFloat64(float64(k2)) - if esep { + ee.EncodeFloat64(float64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v[float64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeFloat64(float64(k2)) + ee.EncodeBool(v[float64(k2)]) } - ee.EncodeBool(v[float64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeFloat64(k2) - if esep { + ee.EncodeFloat64(k2) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeFloat64(k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -5163,26 +5531,32 @@ func (_ fastpathT) EncMapUintIntfV(v map[uint]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + e.encode(v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + e.encode(v[uint(k2)]) } - e.encode(v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -5206,26 +5580,32 @@ func (_ fastpathT) EncMapUintStringV(v map[uint]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeString(cUTF8, v[uint(k2)]) } - ee.EncodeString(cUTF8, v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -5249,26 +5629,32 @@ func (_ fastpathT) EncMapUintUintV(v map[uint]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeUint(uint64(v[uint(k2)])) } - ee.EncodeUint(uint64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5292,26 +5678,32 @@ func (_ fastpathT) EncMapUintUint8V(v map[uint]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeUint(uint64(v[uint(k2)])) } - ee.EncodeUint(uint64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5335,26 +5727,32 @@ func (_ fastpathT) EncMapUintUint16V(v map[uint]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeUint(uint64(v[uint(k2)])) } - ee.EncodeUint(uint64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5378,26 +5776,32 @@ func (_ fastpathT) EncMapUintUint32V(v map[uint]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeUint(uint64(v[uint(k2)])) } - ee.EncodeUint(uint64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5421,26 +5825,32 @@ func (_ fastpathT) EncMapUintUint64V(v map[uint]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeUint(uint64(v[uint(k2)])) } - ee.EncodeUint(uint64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5464,26 +5874,32 @@ func (_ fastpathT) EncMapUintUintptrV(v map[uint]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + e.encode(v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + e.encode(v[uint(k2)]) } - e.encode(v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -5507,26 +5923,32 @@ func (_ fastpathT) EncMapUintIntV(v map[uint]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeInt(int64(v[uint(k2)])) } - ee.EncodeInt(int64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5550,26 +5972,32 @@ func (_ fastpathT) EncMapUintInt8V(v map[uint]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeInt(int64(v[uint(k2)])) } - ee.EncodeInt(int64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5593,26 +6021,32 @@ func (_ fastpathT) EncMapUintInt16V(v map[uint]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeInt(int64(v[uint(k2)])) } - ee.EncodeInt(int64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5636,26 +6070,32 @@ func (_ fastpathT) EncMapUintInt32V(v map[uint]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeInt(int64(v[uint(k2)])) } - ee.EncodeInt(int64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5679,26 +6119,32 @@ func (_ fastpathT) EncMapUintInt64V(v map[uint]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeInt(int64(v[uint(k2)])) } - ee.EncodeInt(int64(v[uint(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -5722,26 +6168,32 @@ func (_ fastpathT) EncMapUintFloat32V(v map[uint]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeFloat32(v[uint(k2)]) } - ee.EncodeFloat32(v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -5765,26 +6217,32 @@ func (_ fastpathT) EncMapUintFloat64V(v map[uint]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeFloat64(v[uint(k2)]) } - ee.EncodeFloat64(v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -5808,26 +6266,32 @@ func (_ fastpathT) EncMapUintBoolV(v map[uint]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint(k2))) - if esep { + ee.EncodeUint(uint64(uint(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[uint(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint(k2))) + ee.EncodeBool(v[uint(k2)]) } - ee.EncodeBool(v[uint(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -5851,26 +6315,32 @@ func (_ fastpathT) EncMapUint8IntfV(v map[uint8]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + e.encode(v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + e.encode(v[uint8(k2)]) } - e.encode(v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -5894,26 +6364,32 @@ func (_ fastpathT) EncMapUint8StringV(v map[uint8]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeString(cUTF8, v[uint8(k2)]) } - ee.EncodeString(cUTF8, v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -5937,26 +6413,32 @@ func (_ fastpathT) EncMapUint8UintV(v map[uint8]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeUint(uint64(v[uint8(k2)])) } - ee.EncodeUint(uint64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -5980,26 +6462,32 @@ func (_ fastpathT) EncMapUint8Uint8V(v map[uint8]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeUint(uint64(v[uint8(k2)])) } - ee.EncodeUint(uint64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6023,26 +6511,32 @@ func (_ fastpathT) EncMapUint8Uint16V(v map[uint8]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeUint(uint64(v[uint8(k2)])) } - ee.EncodeUint(uint64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6066,26 +6560,32 @@ func (_ fastpathT) EncMapUint8Uint32V(v map[uint8]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeUint(uint64(v[uint8(k2)])) } - ee.EncodeUint(uint64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6109,26 +6609,32 @@ func (_ fastpathT) EncMapUint8Uint64V(v map[uint8]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeUint(uint64(v[uint8(k2)])) } - ee.EncodeUint(uint64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6152,26 +6658,32 @@ func (_ fastpathT) EncMapUint8UintptrV(v map[uint8]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + e.encode(v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + e.encode(v[uint8(k2)]) } - e.encode(v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -6195,26 +6707,32 @@ func (_ fastpathT) EncMapUint8IntV(v map[uint8]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeInt(int64(v[uint8(k2)])) } - ee.EncodeInt(int64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6238,26 +6756,32 @@ func (_ fastpathT) EncMapUint8Int8V(v map[uint8]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeInt(int64(v[uint8(k2)])) } - ee.EncodeInt(int64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6281,26 +6805,32 @@ func (_ fastpathT) EncMapUint8Int16V(v map[uint8]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeInt(int64(v[uint8(k2)])) } - ee.EncodeInt(int64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6324,26 +6854,32 @@ func (_ fastpathT) EncMapUint8Int32V(v map[uint8]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeInt(int64(v[uint8(k2)])) } - ee.EncodeInt(int64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6367,26 +6903,32 @@ func (_ fastpathT) EncMapUint8Int64V(v map[uint8]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeInt(int64(v[uint8(k2)])) } - ee.EncodeInt(int64(v[uint8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6410,26 +6952,32 @@ func (_ fastpathT) EncMapUint8Float32V(v map[uint8]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeFloat32(v[uint8(k2)]) } - ee.EncodeFloat32(v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -6453,26 +7001,32 @@ func (_ fastpathT) EncMapUint8Float64V(v map[uint8]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeFloat64(v[uint8(k2)]) } - ee.EncodeFloat64(v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -6496,26 +7050,32 @@ func (_ fastpathT) EncMapUint8BoolV(v map[uint8]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint8(k2))) - if esep { + ee.EncodeUint(uint64(uint8(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[uint8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint8(k2))) + ee.EncodeBool(v[uint8(k2)]) } - ee.EncodeBool(v[uint8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -6539,26 +7099,32 @@ func (_ fastpathT) EncMapUint16IntfV(v map[uint16]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + e.encode(v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + e.encode(v[uint16(k2)]) } - e.encode(v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -6582,26 +7148,32 @@ func (_ fastpathT) EncMapUint16StringV(v map[uint16]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeString(cUTF8, v[uint16(k2)]) } - ee.EncodeString(cUTF8, v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -6625,26 +7197,32 @@ func (_ fastpathT) EncMapUint16UintV(v map[uint16]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeUint(uint64(v[uint16(k2)])) } - ee.EncodeUint(uint64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6668,26 +7246,32 @@ func (_ fastpathT) EncMapUint16Uint8V(v map[uint16]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeUint(uint64(v[uint16(k2)])) } - ee.EncodeUint(uint64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6711,26 +7295,32 @@ func (_ fastpathT) EncMapUint16Uint16V(v map[uint16]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeUint(uint64(v[uint16(k2)])) } - ee.EncodeUint(uint64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6754,26 +7344,32 @@ func (_ fastpathT) EncMapUint16Uint32V(v map[uint16]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeUint(uint64(v[uint16(k2)])) } - ee.EncodeUint(uint64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6797,26 +7393,32 @@ func (_ fastpathT) EncMapUint16Uint64V(v map[uint16]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeUint(uint64(v[uint16(k2)])) } - ee.EncodeUint(uint64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -6840,26 +7442,32 @@ func (_ fastpathT) EncMapUint16UintptrV(v map[uint16]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + e.encode(v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + e.encode(v[uint16(k2)]) } - e.encode(v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -6883,26 +7491,32 @@ func (_ fastpathT) EncMapUint16IntV(v map[uint16]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeInt(int64(v[uint16(k2)])) } - ee.EncodeInt(int64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6926,26 +7540,32 @@ func (_ fastpathT) EncMapUint16Int8V(v map[uint16]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeInt(int64(v[uint16(k2)])) } - ee.EncodeInt(int64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -6969,26 +7589,32 @@ func (_ fastpathT) EncMapUint16Int16V(v map[uint16]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeInt(int64(v[uint16(k2)])) } - ee.EncodeInt(int64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7012,26 +7638,32 @@ func (_ fastpathT) EncMapUint16Int32V(v map[uint16]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeInt(int64(v[uint16(k2)])) } - ee.EncodeInt(int64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7055,26 +7687,32 @@ func (_ fastpathT) EncMapUint16Int64V(v map[uint16]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeInt(int64(v[uint16(k2)])) } - ee.EncodeInt(int64(v[uint16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7098,26 +7736,32 @@ func (_ fastpathT) EncMapUint16Float32V(v map[uint16]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeFloat32(v[uint16(k2)]) } - ee.EncodeFloat32(v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -7141,26 +7785,32 @@ func (_ fastpathT) EncMapUint16Float64V(v map[uint16]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeFloat64(v[uint16(k2)]) } - ee.EncodeFloat64(v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -7184,26 +7834,32 @@ func (_ fastpathT) EncMapUint16BoolV(v map[uint16]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint16(k2))) - if esep { + ee.EncodeUint(uint64(uint16(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[uint16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint16(k2))) + ee.EncodeBool(v[uint16(k2)]) } - ee.EncodeBool(v[uint16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -7227,26 +7883,32 @@ func (_ fastpathT) EncMapUint32IntfV(v map[uint32]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + e.encode(v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + e.encode(v[uint32(k2)]) } - e.encode(v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -7270,26 +7932,32 @@ func (_ fastpathT) EncMapUint32StringV(v map[uint32]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeString(cUTF8, v[uint32(k2)]) } - ee.EncodeString(cUTF8, v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -7313,26 +7981,32 @@ func (_ fastpathT) EncMapUint32UintV(v map[uint32]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeUint(uint64(v[uint32(k2)])) } - ee.EncodeUint(uint64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -7356,26 +8030,32 @@ func (_ fastpathT) EncMapUint32Uint8V(v map[uint32]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeUint(uint64(v[uint32(k2)])) } - ee.EncodeUint(uint64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -7399,26 +8079,32 @@ func (_ fastpathT) EncMapUint32Uint16V(v map[uint32]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeUint(uint64(v[uint32(k2)])) } - ee.EncodeUint(uint64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -7442,26 +8128,32 @@ func (_ fastpathT) EncMapUint32Uint32V(v map[uint32]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeUint(uint64(v[uint32(k2)])) } - ee.EncodeUint(uint64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -7485,26 +8177,32 @@ func (_ fastpathT) EncMapUint32Uint64V(v map[uint32]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeUint(uint64(v[uint32(k2)])) } - ee.EncodeUint(uint64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -7528,26 +8226,32 @@ func (_ fastpathT) EncMapUint32UintptrV(v map[uint32]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + e.encode(v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + e.encode(v[uint32(k2)]) } - e.encode(v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -7571,26 +8275,32 @@ func (_ fastpathT) EncMapUint32IntV(v map[uint32]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeInt(int64(v[uint32(k2)])) } - ee.EncodeInt(int64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7614,26 +8324,32 @@ func (_ fastpathT) EncMapUint32Int8V(v map[uint32]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeInt(int64(v[uint32(k2)])) } - ee.EncodeInt(int64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7657,26 +8373,32 @@ func (_ fastpathT) EncMapUint32Int16V(v map[uint32]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeInt(int64(v[uint32(k2)])) } - ee.EncodeInt(int64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7700,26 +8422,32 @@ func (_ fastpathT) EncMapUint32Int32V(v map[uint32]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeInt(int64(v[uint32(k2)])) } - ee.EncodeInt(int64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7743,26 +8471,32 @@ func (_ fastpathT) EncMapUint32Int64V(v map[uint32]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeInt(int64(v[uint32(k2)])) } - ee.EncodeInt(int64(v[uint32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -7786,26 +8520,32 @@ func (_ fastpathT) EncMapUint32Float32V(v map[uint32]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeFloat32(v[uint32(k2)]) } - ee.EncodeFloat32(v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -7829,26 +8569,32 @@ func (_ fastpathT) EncMapUint32Float64V(v map[uint32]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeFloat64(v[uint32(k2)]) } - ee.EncodeFloat64(v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -7872,26 +8618,32 @@ func (_ fastpathT) EncMapUint32BoolV(v map[uint32]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint32(k2))) - if esep { + ee.EncodeUint(uint64(uint32(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[uint32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint32(k2))) + ee.EncodeBool(v[uint32(k2)]) } - ee.EncodeBool(v[uint32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -7915,26 +8667,32 @@ func (_ fastpathT) EncMapUint64IntfV(v map[uint64]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + e.encode(v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + e.encode(v[uint64(k2)]) } - e.encode(v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -7958,26 +8716,32 @@ func (_ fastpathT) EncMapUint64StringV(v map[uint64]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeString(cUTF8, v[uint64(k2)]) } - ee.EncodeString(cUTF8, v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -8001,26 +8765,32 @@ func (_ fastpathT) EncMapUint64UintV(v map[uint64]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeUint(uint64(v[uint64(k2)])) } - ee.EncodeUint(uint64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8044,26 +8814,32 @@ func (_ fastpathT) EncMapUint64Uint8V(v map[uint64]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeUint(uint64(v[uint64(k2)])) } - ee.EncodeUint(uint64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8087,26 +8863,32 @@ func (_ fastpathT) EncMapUint64Uint16V(v map[uint64]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeUint(uint64(v[uint64(k2)])) } - ee.EncodeUint(uint64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8130,26 +8912,32 @@ func (_ fastpathT) EncMapUint64Uint32V(v map[uint64]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeUint(uint64(v[uint64(k2)])) } - ee.EncodeUint(uint64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8173,26 +8961,32 @@ func (_ fastpathT) EncMapUint64Uint64V(v map[uint64]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeUint(uint64(v[uint64(k2)])) } - ee.EncodeUint(uint64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8216,26 +9010,32 @@ func (_ fastpathT) EncMapUint64UintptrV(v map[uint64]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + e.encode(v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + e.encode(v[uint64(k2)]) } - e.encode(v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -8259,26 +9059,32 @@ func (_ fastpathT) EncMapUint64IntV(v map[uint64]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeInt(int64(v[uint64(k2)])) } - ee.EncodeInt(int64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8302,26 +9108,32 @@ func (_ fastpathT) EncMapUint64Int8V(v map[uint64]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeInt(int64(v[uint64(k2)])) } - ee.EncodeInt(int64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8345,26 +9157,32 @@ func (_ fastpathT) EncMapUint64Int16V(v map[uint64]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeInt(int64(v[uint64(k2)])) } - ee.EncodeInt(int64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8388,26 +9206,32 @@ func (_ fastpathT) EncMapUint64Int32V(v map[uint64]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeInt(int64(v[uint64(k2)])) } - ee.EncodeInt(int64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8431,26 +9255,32 @@ func (_ fastpathT) EncMapUint64Int64V(v map[uint64]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uint64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeInt(int64(v[uint64(k2)])) } - ee.EncodeInt(int64(v[uint64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8474,26 +9304,32 @@ func (_ fastpathT) EncMapUint64Float32V(v map[uint64]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeFloat32(v[uint64(k2)]) } - ee.EncodeFloat32(v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -8517,26 +9353,32 @@ func (_ fastpathT) EncMapUint64Float64V(v map[uint64]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeFloat64(v[uint64(k2)]) } - ee.EncodeFloat64(v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -8560,26 +9402,32 @@ func (_ fastpathT) EncMapUint64BoolV(v map[uint64]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(uint64(k2))) - if esep { + ee.EncodeUint(uint64(uint64(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[uint64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeUint(uint64(uint64(k2))) + ee.EncodeBool(v[uint64(k2)]) } - ee.EncodeBool(v[uint64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeUint(uint64(k2)) - if esep { + ee.EncodeUint(uint64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeUint(uint64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -8603,26 +9451,32 @@ func (_ fastpathT) EncMapUintptrIntfV(v map[uintptr]interface{}, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + e.encode(v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + e.encode(v[uintptr(k2)]) } - e.encode(v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -8646,26 +9500,32 @@ func (_ fastpathT) EncMapUintptrStringV(v map[uintptr]string, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeString(cUTF8, v[uintptr(k2)]) } - ee.EncodeString(cUTF8, v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -8689,26 +9549,32 @@ func (_ fastpathT) EncMapUintptrUintV(v map[uintptr]uint, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeUint(uint64(v[uintptr(k2)])) } - ee.EncodeUint(uint64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8732,26 +9598,32 @@ func (_ fastpathT) EncMapUintptrUint8V(v map[uintptr]uint8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeUint(uint64(v[uintptr(k2)])) } - ee.EncodeUint(uint64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8775,26 +9647,32 @@ func (_ fastpathT) EncMapUintptrUint16V(v map[uintptr]uint16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeUint(uint64(v[uintptr(k2)])) } - ee.EncodeUint(uint64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8818,26 +9696,32 @@ func (_ fastpathT) EncMapUintptrUint32V(v map[uintptr]uint32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeUint(uint64(v[uintptr(k2)])) } - ee.EncodeUint(uint64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8861,26 +9745,32 @@ func (_ fastpathT) EncMapUintptrUint64V(v map[uintptr]uint64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeUint(uint64(v[uintptr(k2)])) } - ee.EncodeUint(uint64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -8904,26 +9794,32 @@ func (_ fastpathT) EncMapUintptrUintptrV(v map[uintptr]uintptr, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + e.encode(v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + e.encode(v[uintptr(k2)]) } - e.encode(v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -8947,26 +9843,32 @@ func (_ fastpathT) EncMapUintptrIntV(v map[uintptr]int, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeInt(int64(v[uintptr(k2)])) } - ee.EncodeInt(int64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -8990,26 +9892,32 @@ func (_ fastpathT) EncMapUintptrInt8V(v map[uintptr]int8, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeInt(int64(v[uintptr(k2)])) } - ee.EncodeInt(int64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9033,26 +9941,32 @@ func (_ fastpathT) EncMapUintptrInt16V(v map[uintptr]int16, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeInt(int64(v[uintptr(k2)])) } - ee.EncodeInt(int64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9076,26 +9990,32 @@ func (_ fastpathT) EncMapUintptrInt32V(v map[uintptr]int32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeInt(int64(v[uintptr(k2)])) } - ee.EncodeInt(int64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9119,26 +10039,32 @@ func (_ fastpathT) EncMapUintptrInt64V(v map[uintptr]int64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[uintptr(k2)])) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeInt(int64(v[uintptr(k2)])) } - ee.EncodeInt(int64(v[uintptr(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9162,26 +10088,32 @@ func (_ fastpathT) EncMapUintptrFloat32V(v map[uintptr]float32, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeFloat32(v[uintptr(k2)]) } - ee.EncodeFloat32(v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -9205,26 +10137,32 @@ func (_ fastpathT) EncMapUintptrFloat64V(v map[uintptr]float64, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeFloat64(v[uintptr(k2)]) } - ee.EncodeFloat64(v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -9248,26 +10186,32 @@ func (_ fastpathT) EncMapUintptrBoolV(v map[uintptr]bool, e *Encoder) { i++ } sort.Sort(uintSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - e.encode(uintptr(k2)) - if esep { + e.encode(uintptr(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v[uintptr(k2)]) + } + } else { + for _, k2 := range v2 { + e.encode(uintptr(k2)) + ee.EncodeBool(v[uintptr(k2)]) } - ee.EncodeBool(v[uintptr(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - e.encode(k2) - if esep { + e.encode(k2) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + e.encode(k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -9291,26 +10235,32 @@ func (_ fastpathT) EncMapIntIntfV(v map[int]interface{}, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + e.encode(v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + e.encode(v[int(k2)]) } - e.encode(v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -9334,26 +10284,32 @@ func (_ fastpathT) EncMapIntStringV(v map[int]string, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeString(cUTF8, v[int(k2)]) } - ee.EncodeString(cUTF8, v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -9377,26 +10333,32 @@ func (_ fastpathT) EncMapIntUintV(v map[int]uint, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeUint(uint64(v[int(k2)])) } - ee.EncodeUint(uint64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -9420,26 +10382,32 @@ func (_ fastpathT) EncMapIntUint8V(v map[int]uint8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeUint(uint64(v[int(k2)])) } - ee.EncodeUint(uint64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -9463,26 +10431,32 @@ func (_ fastpathT) EncMapIntUint16V(v map[int]uint16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeUint(uint64(v[int(k2)])) } - ee.EncodeUint(uint64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -9506,26 +10480,32 @@ func (_ fastpathT) EncMapIntUint32V(v map[int]uint32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeUint(uint64(v[int(k2)])) } - ee.EncodeUint(uint64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -9549,26 +10529,32 @@ func (_ fastpathT) EncMapIntUint64V(v map[int]uint64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeUint(uint64(v[int(k2)])) } - ee.EncodeUint(uint64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -9592,26 +10578,32 @@ func (_ fastpathT) EncMapIntUintptrV(v map[int]uintptr, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + e.encode(v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + e.encode(v[int(k2)]) } - e.encode(v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -9635,26 +10627,32 @@ func (_ fastpathT) EncMapIntIntV(v map[int]int, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeInt(int64(v[int(k2)])) } - ee.EncodeInt(int64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9678,26 +10676,32 @@ func (_ fastpathT) EncMapIntInt8V(v map[int]int8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeInt(int64(v[int(k2)])) } - ee.EncodeInt(int64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9721,26 +10725,32 @@ func (_ fastpathT) EncMapIntInt16V(v map[int]int16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeInt(int64(v[int(k2)])) } - ee.EncodeInt(int64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9764,26 +10774,32 @@ func (_ fastpathT) EncMapIntInt32V(v map[int]int32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeInt(int64(v[int(k2)])) } - ee.EncodeInt(int64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9807,26 +10823,32 @@ func (_ fastpathT) EncMapIntInt64V(v map[int]int64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeInt(int64(v[int(k2)])) } - ee.EncodeInt(int64(v[int(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -9850,26 +10872,32 @@ func (_ fastpathT) EncMapIntFloat32V(v map[int]float32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeFloat32(v[int(k2)]) } - ee.EncodeFloat32(v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -9893,26 +10921,32 @@ func (_ fastpathT) EncMapIntFloat64V(v map[int]float64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeFloat64(v[int(k2)]) } - ee.EncodeFloat64(v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -9936,26 +10970,32 @@ func (_ fastpathT) EncMapIntBoolV(v map[int]bool, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int(k2))) - if esep { + ee.EncodeInt(int64(int(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[int(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int(k2))) + ee.EncodeBool(v[int(k2)]) } - ee.EncodeBool(v[int(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -9979,26 +11019,32 @@ func (_ fastpathT) EncMapInt8IntfV(v map[int8]interface{}, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + e.encode(v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + e.encode(v[int8(k2)]) } - e.encode(v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -10022,26 +11068,32 @@ func (_ fastpathT) EncMapInt8StringV(v map[int8]string, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeString(cUTF8, v[int8(k2)]) } - ee.EncodeString(cUTF8, v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -10065,26 +11117,32 @@ func (_ fastpathT) EncMapInt8UintV(v map[int8]uint, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeUint(uint64(v[int8(k2)])) } - ee.EncodeUint(uint64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10108,26 +11166,32 @@ func (_ fastpathT) EncMapInt8Uint8V(v map[int8]uint8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeUint(uint64(v[int8(k2)])) } - ee.EncodeUint(uint64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10151,26 +11215,32 @@ func (_ fastpathT) EncMapInt8Uint16V(v map[int8]uint16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeUint(uint64(v[int8(k2)])) } - ee.EncodeUint(uint64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10194,26 +11264,32 @@ func (_ fastpathT) EncMapInt8Uint32V(v map[int8]uint32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeUint(uint64(v[int8(k2)])) } - ee.EncodeUint(uint64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10237,26 +11313,32 @@ func (_ fastpathT) EncMapInt8Uint64V(v map[int8]uint64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeUint(uint64(v[int8(k2)])) } - ee.EncodeUint(uint64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10280,26 +11362,32 @@ func (_ fastpathT) EncMapInt8UintptrV(v map[int8]uintptr, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + e.encode(v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + e.encode(v[int8(k2)]) } - e.encode(v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -10323,26 +11411,32 @@ func (_ fastpathT) EncMapInt8IntV(v map[int8]int, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeInt(int64(v[int8(k2)])) } - ee.EncodeInt(int64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -10366,26 +11460,32 @@ func (_ fastpathT) EncMapInt8Int8V(v map[int8]int8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeInt(int64(v[int8(k2)])) } - ee.EncodeInt(int64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -10409,26 +11509,32 @@ func (_ fastpathT) EncMapInt8Int16V(v map[int8]int16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeInt(int64(v[int8(k2)])) } - ee.EncodeInt(int64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -10452,26 +11558,32 @@ func (_ fastpathT) EncMapInt8Int32V(v map[int8]int32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeInt(int64(v[int8(k2)])) } - ee.EncodeInt(int64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -10495,26 +11607,32 @@ func (_ fastpathT) EncMapInt8Int64V(v map[int8]int64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int8(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeInt(int64(v[int8(k2)])) } - ee.EncodeInt(int64(v[int8(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -10538,26 +11656,32 @@ func (_ fastpathT) EncMapInt8Float32V(v map[int8]float32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeFloat32(v[int8(k2)]) } - ee.EncodeFloat32(v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -10581,26 +11705,32 @@ func (_ fastpathT) EncMapInt8Float64V(v map[int8]float64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeFloat64(v[int8(k2)]) } - ee.EncodeFloat64(v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -10624,26 +11754,32 @@ func (_ fastpathT) EncMapInt8BoolV(v map[int8]bool, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int8(k2))) - if esep { + ee.EncodeInt(int64(int8(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[int8(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int8(k2))) + ee.EncodeBool(v[int8(k2)]) } - ee.EncodeBool(v[int8(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -10667,26 +11803,32 @@ func (_ fastpathT) EncMapInt16IntfV(v map[int16]interface{}, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + e.encode(v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + e.encode(v[int16(k2)]) } - e.encode(v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -10710,26 +11852,32 @@ func (_ fastpathT) EncMapInt16StringV(v map[int16]string, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeString(cUTF8, v[int16(k2)]) } - ee.EncodeString(cUTF8, v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -10753,26 +11901,32 @@ func (_ fastpathT) EncMapInt16UintV(v map[int16]uint, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeUint(uint64(v[int16(k2)])) } - ee.EncodeUint(uint64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10796,26 +11950,32 @@ func (_ fastpathT) EncMapInt16Uint8V(v map[int16]uint8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeUint(uint64(v[int16(k2)])) } - ee.EncodeUint(uint64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10839,26 +11999,32 @@ func (_ fastpathT) EncMapInt16Uint16V(v map[int16]uint16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeUint(uint64(v[int16(k2)])) } - ee.EncodeUint(uint64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10882,26 +12048,32 @@ func (_ fastpathT) EncMapInt16Uint32V(v map[int16]uint32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeUint(uint64(v[int16(k2)])) } - ee.EncodeUint(uint64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10925,26 +12097,32 @@ func (_ fastpathT) EncMapInt16Uint64V(v map[int16]uint64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeUint(uint64(v[int16(k2)])) } - ee.EncodeUint(uint64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -10968,26 +12146,32 @@ func (_ fastpathT) EncMapInt16UintptrV(v map[int16]uintptr, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + e.encode(v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + e.encode(v[int16(k2)]) } - e.encode(v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -11011,26 +12195,32 @@ func (_ fastpathT) EncMapInt16IntV(v map[int16]int, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeInt(int64(v[int16(k2)])) } - ee.EncodeInt(int64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11054,26 +12244,32 @@ func (_ fastpathT) EncMapInt16Int8V(v map[int16]int8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeInt(int64(v[int16(k2)])) } - ee.EncodeInt(int64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11097,26 +12293,32 @@ func (_ fastpathT) EncMapInt16Int16V(v map[int16]int16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeInt(int64(v[int16(k2)])) } - ee.EncodeInt(int64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11140,26 +12342,32 @@ func (_ fastpathT) EncMapInt16Int32V(v map[int16]int32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeInt(int64(v[int16(k2)])) } - ee.EncodeInt(int64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11183,26 +12391,32 @@ func (_ fastpathT) EncMapInt16Int64V(v map[int16]int64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int16(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeInt(int64(v[int16(k2)])) } - ee.EncodeInt(int64(v[int16(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11226,26 +12440,32 @@ func (_ fastpathT) EncMapInt16Float32V(v map[int16]float32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeFloat32(v[int16(k2)]) } - ee.EncodeFloat32(v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -11269,26 +12489,32 @@ func (_ fastpathT) EncMapInt16Float64V(v map[int16]float64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeFloat64(v[int16(k2)]) } - ee.EncodeFloat64(v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -11312,26 +12538,32 @@ func (_ fastpathT) EncMapInt16BoolV(v map[int16]bool, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int16(k2))) - if esep { + ee.EncodeInt(int64(int16(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[int16(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int16(k2))) + ee.EncodeBool(v[int16(k2)]) } - ee.EncodeBool(v[int16(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -11355,26 +12587,32 @@ func (_ fastpathT) EncMapInt32IntfV(v map[int32]interface{}, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + e.encode(v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + e.encode(v[int32(k2)]) } - e.encode(v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -11398,26 +12636,32 @@ func (_ fastpathT) EncMapInt32StringV(v map[int32]string, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeString(cUTF8, v[int32(k2)]) } - ee.EncodeString(cUTF8, v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -11441,26 +12685,32 @@ func (_ fastpathT) EncMapInt32UintV(v map[int32]uint, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeUint(uint64(v[int32(k2)])) } - ee.EncodeUint(uint64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -11484,26 +12734,32 @@ func (_ fastpathT) EncMapInt32Uint8V(v map[int32]uint8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeUint(uint64(v[int32(k2)])) } - ee.EncodeUint(uint64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -11527,26 +12783,32 @@ func (_ fastpathT) EncMapInt32Uint16V(v map[int32]uint16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeUint(uint64(v[int32(k2)])) } - ee.EncodeUint(uint64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -11570,26 +12832,32 @@ func (_ fastpathT) EncMapInt32Uint32V(v map[int32]uint32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeUint(uint64(v[int32(k2)])) } - ee.EncodeUint(uint64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -11613,26 +12881,32 @@ func (_ fastpathT) EncMapInt32Uint64V(v map[int32]uint64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeUint(uint64(v[int32(k2)])) } - ee.EncodeUint(uint64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -11656,26 +12930,32 @@ func (_ fastpathT) EncMapInt32UintptrV(v map[int32]uintptr, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + e.encode(v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + e.encode(v[int32(k2)]) } - e.encode(v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -11699,26 +12979,32 @@ func (_ fastpathT) EncMapInt32IntV(v map[int32]int, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeInt(int64(v[int32(k2)])) } - ee.EncodeInt(int64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11742,26 +13028,32 @@ func (_ fastpathT) EncMapInt32Int8V(v map[int32]int8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeInt(int64(v[int32(k2)])) } - ee.EncodeInt(int64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11785,26 +13077,32 @@ func (_ fastpathT) EncMapInt32Int16V(v map[int32]int16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeInt(int64(v[int32(k2)])) } - ee.EncodeInt(int64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11828,26 +13126,32 @@ func (_ fastpathT) EncMapInt32Int32V(v map[int32]int32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeInt(int64(v[int32(k2)])) } - ee.EncodeInt(int64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11871,26 +13175,32 @@ func (_ fastpathT) EncMapInt32Int64V(v map[int32]int64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int32(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeInt(int64(v[int32(k2)])) } - ee.EncodeInt(int64(v[int32(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -11914,26 +13224,32 @@ func (_ fastpathT) EncMapInt32Float32V(v map[int32]float32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeFloat32(v[int32(k2)]) } - ee.EncodeFloat32(v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -11957,26 +13273,32 @@ func (_ fastpathT) EncMapInt32Float64V(v map[int32]float64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeFloat64(v[int32(k2)]) } - ee.EncodeFloat64(v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -12000,26 +13322,32 @@ func (_ fastpathT) EncMapInt32BoolV(v map[int32]bool, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int32(k2))) - if esep { + ee.EncodeInt(int64(int32(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[int32(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int32(k2))) + ee.EncodeBool(v[int32(k2)]) } - ee.EncodeBool(v[int32(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -12043,26 +13371,32 @@ func (_ fastpathT) EncMapInt64IntfV(v map[int64]interface{}, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + e.encode(v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + e.encode(v[int64(k2)]) } - e.encode(v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -12086,26 +13420,32 @@ func (_ fastpathT) EncMapInt64StringV(v map[int64]string, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeString(cUTF8, v[int64(k2)]) } - ee.EncodeString(cUTF8, v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -12129,26 +13469,32 @@ func (_ fastpathT) EncMapInt64UintV(v map[int64]uint, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeUint(uint64(v[int64(k2)])) } - ee.EncodeUint(uint64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12172,26 +13518,32 @@ func (_ fastpathT) EncMapInt64Uint8V(v map[int64]uint8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeUint(uint64(v[int64(k2)])) } - ee.EncodeUint(uint64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12215,26 +13567,32 @@ func (_ fastpathT) EncMapInt64Uint16V(v map[int64]uint16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeUint(uint64(v[int64(k2)])) } - ee.EncodeUint(uint64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12258,26 +13616,32 @@ func (_ fastpathT) EncMapInt64Uint32V(v map[int64]uint32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeUint(uint64(v[int64(k2)])) } - ee.EncodeUint(uint64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12301,26 +13665,32 @@ func (_ fastpathT) EncMapInt64Uint64V(v map[int64]uint64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeUint(uint64(v[int64(k2)])) } - ee.EncodeUint(uint64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12344,26 +13714,32 @@ func (_ fastpathT) EncMapInt64UintptrV(v map[int64]uintptr, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + e.encode(v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + e.encode(v[int64(k2)]) } - e.encode(v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -12387,26 +13763,32 @@ func (_ fastpathT) EncMapInt64IntV(v map[int64]int, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeInt(int64(v[int64(k2)])) } - ee.EncodeInt(int64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -12430,26 +13812,32 @@ func (_ fastpathT) EncMapInt64Int8V(v map[int64]int8, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeInt(int64(v[int64(k2)])) } - ee.EncodeInt(int64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -12473,26 +13861,32 @@ func (_ fastpathT) EncMapInt64Int16V(v map[int64]int16, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeInt(int64(v[int64(k2)])) } - ee.EncodeInt(int64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -12516,26 +13910,32 @@ func (_ fastpathT) EncMapInt64Int32V(v map[int64]int32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeInt(int64(v[int64(k2)])) } - ee.EncodeInt(int64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -12559,26 +13959,32 @@ func (_ fastpathT) EncMapInt64Int64V(v map[int64]int64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[int64(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeInt(int64(v[int64(k2)])) } - ee.EncodeInt(int64(v[int64(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -12602,26 +14008,32 @@ func (_ fastpathT) EncMapInt64Float32V(v map[int64]float32, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeFloat32(v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeFloat32(v[int64(k2)]) } - ee.EncodeFloat32(v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -12645,26 +14057,32 @@ func (_ fastpathT) EncMapInt64Float64V(v map[int64]float64, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeFloat64(v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeFloat64(v[int64(k2)]) } - ee.EncodeFloat64(v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -12688,26 +14106,32 @@ func (_ fastpathT) EncMapInt64BoolV(v map[int64]bool, e *Encoder) { i++ } sort.Sort(intSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(int64(k2))) - if esep { + ee.EncodeInt(int64(int64(k2))) ee.WriteMapElemValue() + ee.EncodeBool(v[int64(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeInt(int64(int64(k2))) + ee.EncodeBool(v[int64(k2)]) } - ee.EncodeBool(v[int64(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeInt(int64(k2)) - if esep { + ee.EncodeInt(int64(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeInt(int64(k2)) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -12731,26 +14155,32 @@ func (_ fastpathT) EncMapBoolIntfV(v map[bool]interface{}, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + e.encode(v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + e.encode(v[bool(k2)]) } - e.encode(v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -12774,26 +14204,32 @@ func (_ fastpathT) EncMapBoolStringV(v map[bool]string, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeString(cUTF8, v[bool(k2)]) } - ee.EncodeString(cUTF8, v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeString(cUTF8, v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeString(cUTF8, v2) } - ee.EncodeString(cUTF8, v2) } } ee.WriteMapEnd() @@ -12817,26 +14253,32 @@ func (_ fastpathT) EncMapBoolUintV(v map[bool]uint, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeUint(uint64(v[bool(k2)])) } - ee.EncodeUint(uint64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12860,26 +14302,32 @@ func (_ fastpathT) EncMapBoolUint8V(v map[bool]uint8, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeUint(uint64(v[bool(k2)])) } - ee.EncodeUint(uint64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12903,26 +14351,32 @@ func (_ fastpathT) EncMapBoolUint16V(v map[bool]uint16, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeUint(uint64(v[bool(k2)])) } - ee.EncodeUint(uint64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12946,26 +14400,32 @@ func (_ fastpathT) EncMapBoolUint32V(v map[bool]uint32, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeUint(uint64(v[bool(k2)])) } - ee.EncodeUint(uint64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -12989,26 +14449,32 @@ func (_ fastpathT) EncMapBoolUint64V(v map[bool]uint64, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeUint(uint64(v[bool(k2)])) } - ee.EncodeUint(uint64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeUint(uint64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeUint(uint64(v2)) } - ee.EncodeUint(uint64(v2)) } } ee.WriteMapEnd() @@ -13032,26 +14498,32 @@ func (_ fastpathT) EncMapBoolUintptrV(v map[bool]uintptr, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + e.encode(v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + e.encode(v[bool(k2)]) } - e.encode(v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + e.encode(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + e.encode(v2) } - e.encode(v2) } } ee.WriteMapEnd() @@ -13075,26 +14547,32 @@ func (_ fastpathT) EncMapBoolIntV(v map[bool]int, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeInt(int64(v[bool(k2)])) } - ee.EncodeInt(int64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -13118,26 +14596,32 @@ func (_ fastpathT) EncMapBoolInt8V(v map[bool]int8, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeInt(int64(v[bool(k2)])) } - ee.EncodeInt(int64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -13161,26 +14645,32 @@ func (_ fastpathT) EncMapBoolInt16V(v map[bool]int16, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeInt(int64(v[bool(k2)])) } - ee.EncodeInt(int64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -13204,26 +14694,32 @@ func (_ fastpathT) EncMapBoolInt32V(v map[bool]int32, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeInt(int64(v[bool(k2)])) } - ee.EncodeInt(int64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -13247,26 +14743,32 @@ func (_ fastpathT) EncMapBoolInt64V(v map[bool]int64, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeInt(int64(v[bool(k2)])) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeInt(int64(v[bool(k2)])) } - ee.EncodeInt(int64(v[bool(k2)])) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeInt(int64(v2)) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeInt(int64(v2)) } - ee.EncodeInt(int64(v2)) } } ee.WriteMapEnd() @@ -13290,26 +14792,32 @@ func (_ fastpathT) EncMapBoolFloat32V(v map[bool]float32, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeFloat32(v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeFloat32(v[bool(k2)]) } - ee.EncodeFloat32(v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeFloat32(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeFloat32(v2) } - ee.EncodeFloat32(v2) } } ee.WriteMapEnd() @@ -13333,26 +14841,32 @@ func (_ fastpathT) EncMapBoolFloat64V(v map[bool]float64, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeFloat64(v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeFloat64(v[bool(k2)]) } - ee.EncodeFloat64(v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeFloat64(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeFloat64(v2) } - ee.EncodeFloat64(v2) } } ee.WriteMapEnd() @@ -13376,26 +14890,32 @@ func (_ fastpathT) EncMapBoolBoolV(v map[bool]bool, e *Encoder) { i++ } sort.Sort(boolSlice(v2)) - for _, k2 := range v2 { - if esep { + if esep { + for _, k2 := range v2 { ee.WriteMapElemKey() - } - ee.EncodeBool(bool(k2)) - if esep { + ee.EncodeBool(bool(k2)) ee.WriteMapElemValue() + ee.EncodeBool(v[bool(k2)]) + } + } else { + for _, k2 := range v2 { + ee.EncodeBool(bool(k2)) + ee.EncodeBool(v[bool(k2)]) } - ee.EncodeBool(v[bool(k2)]) } } else { - for k2, v2 := range v { - if esep { + if esep { + for k2, v2 := range v { ee.WriteMapElemKey() - } - ee.EncodeBool(k2) - if esep { + ee.EncodeBool(k2) ee.WriteMapElemValue() + ee.EncodeBool(v2) + } + } else { + for k2, v2 := range v { + ee.EncodeBool(k2) + ee.EncodeBool(v2) } - ee.EncodeBool(v2) } } ee.WriteMapEnd() @@ -15638,7 +17158,7 @@ func fastpathDecodeTypeSwitch(iv interface{}, d *Decoder) bool { *v = v2 } default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -16193,7 +17713,7 @@ func fastpathDecodeSetZeroTypeSwitch(iv interface{}) bool { case *map[bool]bool: *v = nil default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -16473,7 +17993,7 @@ func (_ fastpathT) DecSliceFloat32V(v []float32, canChange bool, d *Decoder) (_ } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = float32(chkFloat32(dd.DecodeFloat64())) + v[j] = float32(chkOvf.Float32V(dd.DecodeFloat64())) } } if canChange { @@ -16665,7 +18185,7 @@ func (_ fastpathT) DecSliceUintV(v []uint, canChange bool, d *Decoder) (_ []uint } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = uint(dd.DecodeUint(uintBitsize)) + v[j] = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) } } if canChange { @@ -16761,7 +18281,7 @@ func (_ fastpathT) DecSliceUint8V(v []uint8, canChange bool, d *Decoder) (_ []ui } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = uint8(dd.DecodeUint(8)) + v[j] = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) } } if canChange { @@ -16857,7 +18377,7 @@ func (_ fastpathT) DecSliceUint16V(v []uint16, canChange bool, d *Decoder) (_ [] } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = uint16(dd.DecodeUint(16)) + v[j] = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) } } if canChange { @@ -16953,7 +18473,7 @@ func (_ fastpathT) DecSliceUint32V(v []uint32, canChange bool, d *Decoder) (_ [] } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = uint32(dd.DecodeUint(32)) + v[j] = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) } } if canChange { @@ -17049,7 +18569,7 @@ func (_ fastpathT) DecSliceUint64V(v []uint64, canChange bool, d *Decoder) (_ [] } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = dd.DecodeUint(64) + v[j] = dd.DecodeUint64() } } if canChange { @@ -17145,7 +18665,7 @@ func (_ fastpathT) DecSliceUintptrV(v []uintptr, canChange bool, d *Decoder) (_ } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = uintptr(dd.DecodeUint(uintBitsize)) + v[j] = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) } } if canChange { @@ -17241,7 +18761,7 @@ func (_ fastpathT) DecSliceIntV(v []int, canChange bool, d *Decoder) (_ []int, c } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = int(dd.DecodeInt(intBitsize)) + v[j] = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) } } if canChange { @@ -17337,7 +18857,7 @@ func (_ fastpathT) DecSliceInt8V(v []int8, canChange bool, d *Decoder) (_ []int8 } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = int8(dd.DecodeInt(8)) + v[j] = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) } } if canChange { @@ -17433,7 +18953,7 @@ func (_ fastpathT) DecSliceInt16V(v []int16, canChange bool, d *Decoder) (_ []in } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = int16(dd.DecodeInt(16)) + v[j] = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) } } if canChange { @@ -17529,7 +19049,7 @@ func (_ fastpathT) DecSliceInt32V(v []int32, canChange bool, d *Decoder) (_ []in } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = int32(dd.DecodeInt(32)) + v[j] = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) } } if canChange { @@ -17625,7 +19145,7 @@ func (_ fastpathT) DecSliceInt64V(v []int64, canChange bool, d *Decoder) (_ []in } else if dd.TryDecodeAsNil() { v[j] = 0 } else { - v[j] = dd.DecodeInt(64) + v[j] = dd.DecodeInt64() } } if canChange { @@ -17923,7 +19443,7 @@ func (_ fastpathT) DecMapIntfUintV(v map[interface{}]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -17986,7 +19506,7 @@ func (_ fastpathT) DecMapIntfUint8V(v map[interface{}]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -18049,7 +19569,7 @@ func (_ fastpathT) DecMapIntfUint16V(v map[interface{}]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -18112,7 +19632,7 @@ func (_ fastpathT) DecMapIntfUint32V(v map[interface{}]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -18175,7 +19695,7 @@ func (_ fastpathT) DecMapIntfUint64V(v map[interface{}]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -18238,7 +19758,7 @@ func (_ fastpathT) DecMapIntfUintptrV(v map[interface{}]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -18301,7 +19821,7 @@ func (_ fastpathT) DecMapIntfIntV(v map[interface{}]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -18364,7 +19884,7 @@ func (_ fastpathT) DecMapIntfInt8V(v map[interface{}]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -18427,7 +19947,7 @@ func (_ fastpathT) DecMapIntfInt16V(v map[interface{}]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -18490,7 +20010,7 @@ func (_ fastpathT) DecMapIntfInt32V(v map[interface{}]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -18553,7 +20073,7 @@ func (_ fastpathT) DecMapIntfInt64V(v map[interface{}]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -18616,7 +20136,7 @@ func (_ fastpathT) DecMapIntfFloat32V(v map[interface{}]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -18925,7 +20445,7 @@ func (_ fastpathT) DecMapStringUintV(v map[string]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -18984,7 +20504,7 @@ func (_ fastpathT) DecMapStringUint8V(v map[string]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -19043,7 +20563,7 @@ func (_ fastpathT) DecMapStringUint16V(v map[string]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -19102,7 +20622,7 @@ func (_ fastpathT) DecMapStringUint32V(v map[string]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -19161,7 +20681,7 @@ func (_ fastpathT) DecMapStringUint64V(v map[string]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -19220,7 +20740,7 @@ func (_ fastpathT) DecMapStringUintptrV(v map[string]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -19279,7 +20799,7 @@ func (_ fastpathT) DecMapStringIntV(v map[string]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -19338,7 +20858,7 @@ func (_ fastpathT) DecMapStringInt8V(v map[string]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -19397,7 +20917,7 @@ func (_ fastpathT) DecMapStringInt16V(v map[string]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -19456,7 +20976,7 @@ func (_ fastpathT) DecMapStringInt32V(v map[string]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -19515,7 +21035,7 @@ func (_ fastpathT) DecMapStringInt64V(v map[string]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -19574,7 +21094,7 @@ func (_ fastpathT) DecMapStringFloat32V(v map[string]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -19739,7 +21259,7 @@ func (_ fastpathT) DecMapFloat32IntfV(v map[float32]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -19803,7 +21323,7 @@ func (_ fastpathT) DecMapFloat32StringV(v map[float32]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -19862,7 +21382,7 @@ func (_ fastpathT) DecMapFloat32UintV(v map[float32]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -19875,7 +21395,7 @@ func (_ fastpathT) DecMapFloat32UintV(v map[float32]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -19921,7 +21441,7 @@ func (_ fastpathT) DecMapFloat32Uint8V(v map[float32]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -19934,7 +21454,7 @@ func (_ fastpathT) DecMapFloat32Uint8V(v map[float32]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -19980,7 +21500,7 @@ func (_ fastpathT) DecMapFloat32Uint16V(v map[float32]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -19993,7 +21513,7 @@ func (_ fastpathT) DecMapFloat32Uint16V(v map[float32]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -20039,7 +21559,7 @@ func (_ fastpathT) DecMapFloat32Uint32V(v map[float32]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20052,7 +21572,7 @@ func (_ fastpathT) DecMapFloat32Uint32V(v map[float32]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -20098,7 +21618,7 @@ func (_ fastpathT) DecMapFloat32Uint64V(v map[float32]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20111,7 +21631,7 @@ func (_ fastpathT) DecMapFloat32Uint64V(v map[float32]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -20157,7 +21677,7 @@ func (_ fastpathT) DecMapFloat32UintptrV(v map[float32]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20170,7 +21690,7 @@ func (_ fastpathT) DecMapFloat32UintptrV(v map[float32]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -20216,7 +21736,7 @@ func (_ fastpathT) DecMapFloat32IntV(v map[float32]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20229,7 +21749,7 @@ func (_ fastpathT) DecMapFloat32IntV(v map[float32]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -20275,7 +21795,7 @@ func (_ fastpathT) DecMapFloat32Int8V(v map[float32]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20288,7 +21808,7 @@ func (_ fastpathT) DecMapFloat32Int8V(v map[float32]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -20334,7 +21854,7 @@ func (_ fastpathT) DecMapFloat32Int16V(v map[float32]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20347,7 +21867,7 @@ func (_ fastpathT) DecMapFloat32Int16V(v map[float32]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -20393,7 +21913,7 @@ func (_ fastpathT) DecMapFloat32Int32V(v map[float32]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20406,7 +21926,7 @@ func (_ fastpathT) DecMapFloat32Int32V(v map[float32]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -20452,7 +21972,7 @@ func (_ fastpathT) DecMapFloat32Int64V(v map[float32]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20465,7 +21985,7 @@ func (_ fastpathT) DecMapFloat32Int64V(v map[float32]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -20511,7 +22031,7 @@ func (_ fastpathT) DecMapFloat32Float32V(v map[float32]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20524,7 +22044,7 @@ func (_ fastpathT) DecMapFloat32Float32V(v map[float32]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -20570,7 +22090,7 @@ func (_ fastpathT) DecMapFloat32Float64V(v map[float32]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20629,7 +22149,7 @@ func (_ fastpathT) DecMapFloat32BoolV(v map[float32]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = float32(chkFloat32(dd.DecodeFloat64())) + mk = float32(chkOvf.Float32V(dd.DecodeFloat64())) if esep { dd.ReadMapElemValue() } @@ -20825,7 +22345,7 @@ func (_ fastpathT) DecMapFloat64UintV(v map[float64]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -20884,7 +22404,7 @@ func (_ fastpathT) DecMapFloat64Uint8V(v map[float64]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -20943,7 +22463,7 @@ func (_ fastpathT) DecMapFloat64Uint16V(v map[float64]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -21002,7 +22522,7 @@ func (_ fastpathT) DecMapFloat64Uint32V(v map[float64]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -21061,7 +22581,7 @@ func (_ fastpathT) DecMapFloat64Uint64V(v map[float64]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -21120,7 +22640,7 @@ func (_ fastpathT) DecMapFloat64UintptrV(v map[float64]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -21179,7 +22699,7 @@ func (_ fastpathT) DecMapFloat64IntV(v map[float64]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -21238,7 +22758,7 @@ func (_ fastpathT) DecMapFloat64Int8V(v map[float64]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -21297,7 +22817,7 @@ func (_ fastpathT) DecMapFloat64Int16V(v map[float64]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -21356,7 +22876,7 @@ func (_ fastpathT) DecMapFloat64Int32V(v map[float64]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -21415,7 +22935,7 @@ func (_ fastpathT) DecMapFloat64Int64V(v map[float64]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -21474,7 +22994,7 @@ func (_ fastpathT) DecMapFloat64Float32V(v map[float64]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -21639,7 +23159,7 @@ func (_ fastpathT) DecMapUintIntfV(v map[uint]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21703,7 +23223,7 @@ func (_ fastpathT) DecMapUintStringV(v map[uint]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21762,7 +23282,7 @@ func (_ fastpathT) DecMapUintUintV(v map[uint]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21775,7 +23295,7 @@ func (_ fastpathT) DecMapUintUintV(v map[uint]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -21821,7 +23341,7 @@ func (_ fastpathT) DecMapUintUint8V(v map[uint]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21834,7 +23354,7 @@ func (_ fastpathT) DecMapUintUint8V(v map[uint]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -21880,7 +23400,7 @@ func (_ fastpathT) DecMapUintUint16V(v map[uint]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21893,7 +23413,7 @@ func (_ fastpathT) DecMapUintUint16V(v map[uint]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -21939,7 +23459,7 @@ func (_ fastpathT) DecMapUintUint32V(v map[uint]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -21952,7 +23472,7 @@ func (_ fastpathT) DecMapUintUint32V(v map[uint]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -21998,7 +23518,7 @@ func (_ fastpathT) DecMapUintUint64V(v map[uint]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22011,7 +23531,7 @@ func (_ fastpathT) DecMapUintUint64V(v map[uint]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -22057,7 +23577,7 @@ func (_ fastpathT) DecMapUintUintptrV(v map[uint]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22070,7 +23590,7 @@ func (_ fastpathT) DecMapUintUintptrV(v map[uint]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -22116,7 +23636,7 @@ func (_ fastpathT) DecMapUintIntV(v map[uint]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22129,7 +23649,7 @@ func (_ fastpathT) DecMapUintIntV(v map[uint]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -22175,7 +23695,7 @@ func (_ fastpathT) DecMapUintInt8V(v map[uint]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22188,7 +23708,7 @@ func (_ fastpathT) DecMapUintInt8V(v map[uint]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -22234,7 +23754,7 @@ func (_ fastpathT) DecMapUintInt16V(v map[uint]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22247,7 +23767,7 @@ func (_ fastpathT) DecMapUintInt16V(v map[uint]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -22293,7 +23813,7 @@ func (_ fastpathT) DecMapUintInt32V(v map[uint]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22306,7 +23826,7 @@ func (_ fastpathT) DecMapUintInt32V(v map[uint]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -22352,7 +23872,7 @@ func (_ fastpathT) DecMapUintInt64V(v map[uint]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22365,7 +23885,7 @@ func (_ fastpathT) DecMapUintInt64V(v map[uint]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -22411,7 +23931,7 @@ func (_ fastpathT) DecMapUintFloat32V(v map[uint]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22424,7 +23944,7 @@ func (_ fastpathT) DecMapUintFloat32V(v map[uint]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -22470,7 +23990,7 @@ func (_ fastpathT) DecMapUintFloat64V(v map[uint]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22529,7 +24049,7 @@ func (_ fastpathT) DecMapUintBoolV(v map[uint]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint(dd.DecodeUint(uintBitsize)) + mk = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -22589,7 +24109,7 @@ func (_ fastpathT) DecMapUint8IntfV(v map[uint8]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22653,7 +24173,7 @@ func (_ fastpathT) DecMapUint8StringV(v map[uint8]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22712,7 +24232,7 @@ func (_ fastpathT) DecMapUint8UintV(v map[uint8]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22725,7 +24245,7 @@ func (_ fastpathT) DecMapUint8UintV(v map[uint8]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -22771,7 +24291,7 @@ func (_ fastpathT) DecMapUint8Uint8V(v map[uint8]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22784,7 +24304,7 @@ func (_ fastpathT) DecMapUint8Uint8V(v map[uint8]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -22830,7 +24350,7 @@ func (_ fastpathT) DecMapUint8Uint16V(v map[uint8]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22843,7 +24363,7 @@ func (_ fastpathT) DecMapUint8Uint16V(v map[uint8]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -22889,7 +24409,7 @@ func (_ fastpathT) DecMapUint8Uint32V(v map[uint8]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22902,7 +24422,7 @@ func (_ fastpathT) DecMapUint8Uint32V(v map[uint8]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -22948,7 +24468,7 @@ func (_ fastpathT) DecMapUint8Uint64V(v map[uint8]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -22961,7 +24481,7 @@ func (_ fastpathT) DecMapUint8Uint64V(v map[uint8]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -23007,7 +24527,7 @@ func (_ fastpathT) DecMapUint8UintptrV(v map[uint8]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23020,7 +24540,7 @@ func (_ fastpathT) DecMapUint8UintptrV(v map[uint8]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -23066,7 +24586,7 @@ func (_ fastpathT) DecMapUint8IntV(v map[uint8]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23079,7 +24599,7 @@ func (_ fastpathT) DecMapUint8IntV(v map[uint8]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -23125,7 +24645,7 @@ func (_ fastpathT) DecMapUint8Int8V(v map[uint8]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23138,7 +24658,7 @@ func (_ fastpathT) DecMapUint8Int8V(v map[uint8]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -23184,7 +24704,7 @@ func (_ fastpathT) DecMapUint8Int16V(v map[uint8]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23197,7 +24717,7 @@ func (_ fastpathT) DecMapUint8Int16V(v map[uint8]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -23243,7 +24763,7 @@ func (_ fastpathT) DecMapUint8Int32V(v map[uint8]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23256,7 +24776,7 @@ func (_ fastpathT) DecMapUint8Int32V(v map[uint8]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -23302,7 +24822,7 @@ func (_ fastpathT) DecMapUint8Int64V(v map[uint8]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23315,7 +24835,7 @@ func (_ fastpathT) DecMapUint8Int64V(v map[uint8]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -23361,7 +24881,7 @@ func (_ fastpathT) DecMapUint8Float32V(v map[uint8]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23374,7 +24894,7 @@ func (_ fastpathT) DecMapUint8Float32V(v map[uint8]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -23420,7 +24940,7 @@ func (_ fastpathT) DecMapUint8Float64V(v map[uint8]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23479,7 +24999,7 @@ func (_ fastpathT) DecMapUint8BoolV(v map[uint8]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint8(dd.DecodeUint(8)) + mk = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if esep { dd.ReadMapElemValue() } @@ -23539,7 +25059,7 @@ func (_ fastpathT) DecMapUint16IntfV(v map[uint16]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23603,7 +25123,7 @@ func (_ fastpathT) DecMapUint16StringV(v map[uint16]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23662,7 +25182,7 @@ func (_ fastpathT) DecMapUint16UintV(v map[uint16]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23675,7 +25195,7 @@ func (_ fastpathT) DecMapUint16UintV(v map[uint16]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -23721,7 +25241,7 @@ func (_ fastpathT) DecMapUint16Uint8V(v map[uint16]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23734,7 +25254,7 @@ func (_ fastpathT) DecMapUint16Uint8V(v map[uint16]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -23780,7 +25300,7 @@ func (_ fastpathT) DecMapUint16Uint16V(v map[uint16]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23793,7 +25313,7 @@ func (_ fastpathT) DecMapUint16Uint16V(v map[uint16]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -23839,7 +25359,7 @@ func (_ fastpathT) DecMapUint16Uint32V(v map[uint16]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23852,7 +25372,7 @@ func (_ fastpathT) DecMapUint16Uint32V(v map[uint16]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -23898,7 +25418,7 @@ func (_ fastpathT) DecMapUint16Uint64V(v map[uint16]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23911,7 +25431,7 @@ func (_ fastpathT) DecMapUint16Uint64V(v map[uint16]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -23957,7 +25477,7 @@ func (_ fastpathT) DecMapUint16UintptrV(v map[uint16]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -23970,7 +25490,7 @@ func (_ fastpathT) DecMapUint16UintptrV(v map[uint16]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -24016,7 +25536,7 @@ func (_ fastpathT) DecMapUint16IntV(v map[uint16]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24029,7 +25549,7 @@ func (_ fastpathT) DecMapUint16IntV(v map[uint16]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -24075,7 +25595,7 @@ func (_ fastpathT) DecMapUint16Int8V(v map[uint16]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24088,7 +25608,7 @@ func (_ fastpathT) DecMapUint16Int8V(v map[uint16]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -24134,7 +25654,7 @@ func (_ fastpathT) DecMapUint16Int16V(v map[uint16]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24147,7 +25667,7 @@ func (_ fastpathT) DecMapUint16Int16V(v map[uint16]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -24193,7 +25713,7 @@ func (_ fastpathT) DecMapUint16Int32V(v map[uint16]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24206,7 +25726,7 @@ func (_ fastpathT) DecMapUint16Int32V(v map[uint16]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -24252,7 +25772,7 @@ func (_ fastpathT) DecMapUint16Int64V(v map[uint16]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24265,7 +25785,7 @@ func (_ fastpathT) DecMapUint16Int64V(v map[uint16]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -24311,7 +25831,7 @@ func (_ fastpathT) DecMapUint16Float32V(v map[uint16]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24324,7 +25844,7 @@ func (_ fastpathT) DecMapUint16Float32V(v map[uint16]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -24370,7 +25890,7 @@ func (_ fastpathT) DecMapUint16Float64V(v map[uint16]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24429,7 +25949,7 @@ func (_ fastpathT) DecMapUint16BoolV(v map[uint16]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint16(dd.DecodeUint(16)) + mk = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if esep { dd.ReadMapElemValue() } @@ -24489,7 +26009,7 @@ func (_ fastpathT) DecMapUint32IntfV(v map[uint32]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24553,7 +26073,7 @@ func (_ fastpathT) DecMapUint32StringV(v map[uint32]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24612,7 +26132,7 @@ func (_ fastpathT) DecMapUint32UintV(v map[uint32]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24625,7 +26145,7 @@ func (_ fastpathT) DecMapUint32UintV(v map[uint32]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -24671,7 +26191,7 @@ func (_ fastpathT) DecMapUint32Uint8V(v map[uint32]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24684,7 +26204,7 @@ func (_ fastpathT) DecMapUint32Uint8V(v map[uint32]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -24730,7 +26250,7 @@ func (_ fastpathT) DecMapUint32Uint16V(v map[uint32]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24743,7 +26263,7 @@ func (_ fastpathT) DecMapUint32Uint16V(v map[uint32]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -24789,7 +26309,7 @@ func (_ fastpathT) DecMapUint32Uint32V(v map[uint32]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24802,7 +26322,7 @@ func (_ fastpathT) DecMapUint32Uint32V(v map[uint32]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -24848,7 +26368,7 @@ func (_ fastpathT) DecMapUint32Uint64V(v map[uint32]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24861,7 +26381,7 @@ func (_ fastpathT) DecMapUint32Uint64V(v map[uint32]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -24907,7 +26427,7 @@ func (_ fastpathT) DecMapUint32UintptrV(v map[uint32]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24920,7 +26440,7 @@ func (_ fastpathT) DecMapUint32UintptrV(v map[uint32]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -24966,7 +26486,7 @@ func (_ fastpathT) DecMapUint32IntV(v map[uint32]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -24979,7 +26499,7 @@ func (_ fastpathT) DecMapUint32IntV(v map[uint32]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -25025,7 +26545,7 @@ func (_ fastpathT) DecMapUint32Int8V(v map[uint32]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25038,7 +26558,7 @@ func (_ fastpathT) DecMapUint32Int8V(v map[uint32]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -25084,7 +26604,7 @@ func (_ fastpathT) DecMapUint32Int16V(v map[uint32]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25097,7 +26617,7 @@ func (_ fastpathT) DecMapUint32Int16V(v map[uint32]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -25143,7 +26663,7 @@ func (_ fastpathT) DecMapUint32Int32V(v map[uint32]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25156,7 +26676,7 @@ func (_ fastpathT) DecMapUint32Int32V(v map[uint32]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -25202,7 +26722,7 @@ func (_ fastpathT) DecMapUint32Int64V(v map[uint32]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25215,7 +26735,7 @@ func (_ fastpathT) DecMapUint32Int64V(v map[uint32]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -25261,7 +26781,7 @@ func (_ fastpathT) DecMapUint32Float32V(v map[uint32]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25274,7 +26794,7 @@ func (_ fastpathT) DecMapUint32Float32V(v map[uint32]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -25320,7 +26840,7 @@ func (_ fastpathT) DecMapUint32Float64V(v map[uint32]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25379,7 +26899,7 @@ func (_ fastpathT) DecMapUint32BoolV(v map[uint32]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uint32(dd.DecodeUint(32)) + mk = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if esep { dd.ReadMapElemValue() } @@ -25439,7 +26959,7 @@ func (_ fastpathT) DecMapUint64IntfV(v map[uint64]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25503,7 +27023,7 @@ func (_ fastpathT) DecMapUint64StringV(v map[uint64]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25562,7 +27082,7 @@ func (_ fastpathT) DecMapUint64UintV(v map[uint64]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25575,7 +27095,7 @@ func (_ fastpathT) DecMapUint64UintV(v map[uint64]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -25621,7 +27141,7 @@ func (_ fastpathT) DecMapUint64Uint8V(v map[uint64]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25634,7 +27154,7 @@ func (_ fastpathT) DecMapUint64Uint8V(v map[uint64]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -25680,7 +27200,7 @@ func (_ fastpathT) DecMapUint64Uint16V(v map[uint64]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25693,7 +27213,7 @@ func (_ fastpathT) DecMapUint64Uint16V(v map[uint64]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -25739,7 +27259,7 @@ func (_ fastpathT) DecMapUint64Uint32V(v map[uint64]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25752,7 +27272,7 @@ func (_ fastpathT) DecMapUint64Uint32V(v map[uint64]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -25798,7 +27318,7 @@ func (_ fastpathT) DecMapUint64Uint64V(v map[uint64]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25811,7 +27331,7 @@ func (_ fastpathT) DecMapUint64Uint64V(v map[uint64]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -25857,7 +27377,7 @@ func (_ fastpathT) DecMapUint64UintptrV(v map[uint64]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25870,7 +27390,7 @@ func (_ fastpathT) DecMapUint64UintptrV(v map[uint64]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -25916,7 +27436,7 @@ func (_ fastpathT) DecMapUint64IntV(v map[uint64]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25929,7 +27449,7 @@ func (_ fastpathT) DecMapUint64IntV(v map[uint64]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -25975,7 +27495,7 @@ func (_ fastpathT) DecMapUint64Int8V(v map[uint64]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -25988,7 +27508,7 @@ func (_ fastpathT) DecMapUint64Int8V(v map[uint64]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -26034,7 +27554,7 @@ func (_ fastpathT) DecMapUint64Int16V(v map[uint64]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26047,7 +27567,7 @@ func (_ fastpathT) DecMapUint64Int16V(v map[uint64]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -26093,7 +27613,7 @@ func (_ fastpathT) DecMapUint64Int32V(v map[uint64]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26106,7 +27626,7 @@ func (_ fastpathT) DecMapUint64Int32V(v map[uint64]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -26152,7 +27672,7 @@ func (_ fastpathT) DecMapUint64Int64V(v map[uint64]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26165,7 +27685,7 @@ func (_ fastpathT) DecMapUint64Int64V(v map[uint64]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -26211,7 +27731,7 @@ func (_ fastpathT) DecMapUint64Float32V(v map[uint64]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26224,7 +27744,7 @@ func (_ fastpathT) DecMapUint64Float32V(v map[uint64]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -26270,7 +27790,7 @@ func (_ fastpathT) DecMapUint64Float64V(v map[uint64]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26329,7 +27849,7 @@ func (_ fastpathT) DecMapUint64BoolV(v map[uint64]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeUint(64) + mk = dd.DecodeUint64() if esep { dd.ReadMapElemValue() } @@ -26389,7 +27909,7 @@ func (_ fastpathT) DecMapUintptrIntfV(v map[uintptr]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26453,7 +27973,7 @@ func (_ fastpathT) DecMapUintptrStringV(v map[uintptr]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26512,7 +28032,7 @@ func (_ fastpathT) DecMapUintptrUintV(v map[uintptr]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26525,7 +28045,7 @@ func (_ fastpathT) DecMapUintptrUintV(v map[uintptr]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -26571,7 +28091,7 @@ func (_ fastpathT) DecMapUintptrUint8V(v map[uintptr]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26584,7 +28104,7 @@ func (_ fastpathT) DecMapUintptrUint8V(v map[uintptr]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -26630,7 +28150,7 @@ func (_ fastpathT) DecMapUintptrUint16V(v map[uintptr]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26643,7 +28163,7 @@ func (_ fastpathT) DecMapUintptrUint16V(v map[uintptr]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -26689,7 +28209,7 @@ func (_ fastpathT) DecMapUintptrUint32V(v map[uintptr]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26702,7 +28222,7 @@ func (_ fastpathT) DecMapUintptrUint32V(v map[uintptr]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -26748,7 +28268,7 @@ func (_ fastpathT) DecMapUintptrUint64V(v map[uintptr]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26761,7 +28281,7 @@ func (_ fastpathT) DecMapUintptrUint64V(v map[uintptr]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -26807,7 +28327,7 @@ func (_ fastpathT) DecMapUintptrUintptrV(v map[uintptr]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26820,7 +28340,7 @@ func (_ fastpathT) DecMapUintptrUintptrV(v map[uintptr]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -26866,7 +28386,7 @@ func (_ fastpathT) DecMapUintptrIntV(v map[uintptr]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26879,7 +28399,7 @@ func (_ fastpathT) DecMapUintptrIntV(v map[uintptr]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -26925,7 +28445,7 @@ func (_ fastpathT) DecMapUintptrInt8V(v map[uintptr]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26938,7 +28458,7 @@ func (_ fastpathT) DecMapUintptrInt8V(v map[uintptr]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -26984,7 +28504,7 @@ func (_ fastpathT) DecMapUintptrInt16V(v map[uintptr]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -26997,7 +28517,7 @@ func (_ fastpathT) DecMapUintptrInt16V(v map[uintptr]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -27043,7 +28563,7 @@ func (_ fastpathT) DecMapUintptrInt32V(v map[uintptr]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -27056,7 +28576,7 @@ func (_ fastpathT) DecMapUintptrInt32V(v map[uintptr]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -27102,7 +28622,7 @@ func (_ fastpathT) DecMapUintptrInt64V(v map[uintptr]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -27115,7 +28635,7 @@ func (_ fastpathT) DecMapUintptrInt64V(v map[uintptr]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -27161,7 +28681,7 @@ func (_ fastpathT) DecMapUintptrFloat32V(v map[uintptr]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -27174,7 +28694,7 @@ func (_ fastpathT) DecMapUintptrFloat32V(v map[uintptr]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -27220,7 +28740,7 @@ func (_ fastpathT) DecMapUintptrFloat64V(v map[uintptr]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -27279,7 +28799,7 @@ func (_ fastpathT) DecMapUintptrBoolV(v map[uintptr]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = uintptr(dd.DecodeUint(uintBitsize)) + mk = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if esep { dd.ReadMapElemValue() } @@ -27339,7 +28859,7 @@ func (_ fastpathT) DecMapIntIntfV(v map[int]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27403,7 +28923,7 @@ func (_ fastpathT) DecMapIntStringV(v map[int]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27462,7 +28982,7 @@ func (_ fastpathT) DecMapIntUintV(v map[int]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27475,7 +28995,7 @@ func (_ fastpathT) DecMapIntUintV(v map[int]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -27521,7 +29041,7 @@ func (_ fastpathT) DecMapIntUint8V(v map[int]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27534,7 +29054,7 @@ func (_ fastpathT) DecMapIntUint8V(v map[int]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -27580,7 +29100,7 @@ func (_ fastpathT) DecMapIntUint16V(v map[int]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27593,7 +29113,7 @@ func (_ fastpathT) DecMapIntUint16V(v map[int]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -27639,7 +29159,7 @@ func (_ fastpathT) DecMapIntUint32V(v map[int]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27652,7 +29172,7 @@ func (_ fastpathT) DecMapIntUint32V(v map[int]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -27698,7 +29218,7 @@ func (_ fastpathT) DecMapIntUint64V(v map[int]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27711,7 +29231,7 @@ func (_ fastpathT) DecMapIntUint64V(v map[int]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -27757,7 +29277,7 @@ func (_ fastpathT) DecMapIntUintptrV(v map[int]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27770,7 +29290,7 @@ func (_ fastpathT) DecMapIntUintptrV(v map[int]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -27816,7 +29336,7 @@ func (_ fastpathT) DecMapIntIntV(v map[int]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27829,7 +29349,7 @@ func (_ fastpathT) DecMapIntIntV(v map[int]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -27875,7 +29395,7 @@ func (_ fastpathT) DecMapIntInt8V(v map[int]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27888,7 +29408,7 @@ func (_ fastpathT) DecMapIntInt8V(v map[int]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -27934,7 +29454,7 @@ func (_ fastpathT) DecMapIntInt16V(v map[int]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -27947,7 +29467,7 @@ func (_ fastpathT) DecMapIntInt16V(v map[int]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -27993,7 +29513,7 @@ func (_ fastpathT) DecMapIntInt32V(v map[int]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -28006,7 +29526,7 @@ func (_ fastpathT) DecMapIntInt32V(v map[int]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -28052,7 +29572,7 @@ func (_ fastpathT) DecMapIntInt64V(v map[int]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -28065,7 +29585,7 @@ func (_ fastpathT) DecMapIntInt64V(v map[int]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -28111,7 +29631,7 @@ func (_ fastpathT) DecMapIntFloat32V(v map[int]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -28124,7 +29644,7 @@ func (_ fastpathT) DecMapIntFloat32V(v map[int]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -28170,7 +29690,7 @@ func (_ fastpathT) DecMapIntFloat64V(v map[int]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -28229,7 +29749,7 @@ func (_ fastpathT) DecMapIntBoolV(v map[int]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int(dd.DecodeInt(intBitsize)) + mk = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if esep { dd.ReadMapElemValue() } @@ -28289,7 +29809,7 @@ func (_ fastpathT) DecMapInt8IntfV(v map[int8]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28353,7 +29873,7 @@ func (_ fastpathT) DecMapInt8StringV(v map[int8]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28412,7 +29932,7 @@ func (_ fastpathT) DecMapInt8UintV(v map[int8]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28425,7 +29945,7 @@ func (_ fastpathT) DecMapInt8UintV(v map[int8]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -28471,7 +29991,7 @@ func (_ fastpathT) DecMapInt8Uint8V(v map[int8]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28484,7 +30004,7 @@ func (_ fastpathT) DecMapInt8Uint8V(v map[int8]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -28530,7 +30050,7 @@ func (_ fastpathT) DecMapInt8Uint16V(v map[int8]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28543,7 +30063,7 @@ func (_ fastpathT) DecMapInt8Uint16V(v map[int8]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -28589,7 +30109,7 @@ func (_ fastpathT) DecMapInt8Uint32V(v map[int8]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28602,7 +30122,7 @@ func (_ fastpathT) DecMapInt8Uint32V(v map[int8]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -28648,7 +30168,7 @@ func (_ fastpathT) DecMapInt8Uint64V(v map[int8]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28661,7 +30181,7 @@ func (_ fastpathT) DecMapInt8Uint64V(v map[int8]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -28707,7 +30227,7 @@ func (_ fastpathT) DecMapInt8UintptrV(v map[int8]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28720,7 +30240,7 @@ func (_ fastpathT) DecMapInt8UintptrV(v map[int8]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -28766,7 +30286,7 @@ func (_ fastpathT) DecMapInt8IntV(v map[int8]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28779,7 +30299,7 @@ func (_ fastpathT) DecMapInt8IntV(v map[int8]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -28825,7 +30345,7 @@ func (_ fastpathT) DecMapInt8Int8V(v map[int8]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28838,7 +30358,7 @@ func (_ fastpathT) DecMapInt8Int8V(v map[int8]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -28884,7 +30404,7 @@ func (_ fastpathT) DecMapInt8Int16V(v map[int8]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28897,7 +30417,7 @@ func (_ fastpathT) DecMapInt8Int16V(v map[int8]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -28943,7 +30463,7 @@ func (_ fastpathT) DecMapInt8Int32V(v map[int8]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -28956,7 +30476,7 @@ func (_ fastpathT) DecMapInt8Int32V(v map[int8]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -29002,7 +30522,7 @@ func (_ fastpathT) DecMapInt8Int64V(v map[int8]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -29015,7 +30535,7 @@ func (_ fastpathT) DecMapInt8Int64V(v map[int8]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -29061,7 +30581,7 @@ func (_ fastpathT) DecMapInt8Float32V(v map[int8]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -29074,7 +30594,7 @@ func (_ fastpathT) DecMapInt8Float32V(v map[int8]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -29120,7 +30640,7 @@ func (_ fastpathT) DecMapInt8Float64V(v map[int8]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -29179,7 +30699,7 @@ func (_ fastpathT) DecMapInt8BoolV(v map[int8]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int8(dd.DecodeInt(8)) + mk = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if esep { dd.ReadMapElemValue() } @@ -29239,7 +30759,7 @@ func (_ fastpathT) DecMapInt16IntfV(v map[int16]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29303,7 +30823,7 @@ func (_ fastpathT) DecMapInt16StringV(v map[int16]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29362,7 +30882,7 @@ func (_ fastpathT) DecMapInt16UintV(v map[int16]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29375,7 +30895,7 @@ func (_ fastpathT) DecMapInt16UintV(v map[int16]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -29421,7 +30941,7 @@ func (_ fastpathT) DecMapInt16Uint8V(v map[int16]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29434,7 +30954,7 @@ func (_ fastpathT) DecMapInt16Uint8V(v map[int16]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -29480,7 +31000,7 @@ func (_ fastpathT) DecMapInt16Uint16V(v map[int16]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29493,7 +31013,7 @@ func (_ fastpathT) DecMapInt16Uint16V(v map[int16]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -29539,7 +31059,7 @@ func (_ fastpathT) DecMapInt16Uint32V(v map[int16]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29552,7 +31072,7 @@ func (_ fastpathT) DecMapInt16Uint32V(v map[int16]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -29598,7 +31118,7 @@ func (_ fastpathT) DecMapInt16Uint64V(v map[int16]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29611,7 +31131,7 @@ func (_ fastpathT) DecMapInt16Uint64V(v map[int16]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -29657,7 +31177,7 @@ func (_ fastpathT) DecMapInt16UintptrV(v map[int16]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29670,7 +31190,7 @@ func (_ fastpathT) DecMapInt16UintptrV(v map[int16]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -29716,7 +31236,7 @@ func (_ fastpathT) DecMapInt16IntV(v map[int16]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29729,7 +31249,7 @@ func (_ fastpathT) DecMapInt16IntV(v map[int16]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -29775,7 +31295,7 @@ func (_ fastpathT) DecMapInt16Int8V(v map[int16]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29788,7 +31308,7 @@ func (_ fastpathT) DecMapInt16Int8V(v map[int16]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -29834,7 +31354,7 @@ func (_ fastpathT) DecMapInt16Int16V(v map[int16]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29847,7 +31367,7 @@ func (_ fastpathT) DecMapInt16Int16V(v map[int16]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -29893,7 +31413,7 @@ func (_ fastpathT) DecMapInt16Int32V(v map[int16]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29906,7 +31426,7 @@ func (_ fastpathT) DecMapInt16Int32V(v map[int16]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -29952,7 +31472,7 @@ func (_ fastpathT) DecMapInt16Int64V(v map[int16]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -29965,7 +31485,7 @@ func (_ fastpathT) DecMapInt16Int64V(v map[int16]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -30011,7 +31531,7 @@ func (_ fastpathT) DecMapInt16Float32V(v map[int16]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -30024,7 +31544,7 @@ func (_ fastpathT) DecMapInt16Float32V(v map[int16]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -30070,7 +31590,7 @@ func (_ fastpathT) DecMapInt16Float64V(v map[int16]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -30129,7 +31649,7 @@ func (_ fastpathT) DecMapInt16BoolV(v map[int16]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int16(dd.DecodeInt(16)) + mk = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if esep { dd.ReadMapElemValue() } @@ -30189,7 +31709,7 @@ func (_ fastpathT) DecMapInt32IntfV(v map[int32]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30253,7 +31773,7 @@ func (_ fastpathT) DecMapInt32StringV(v map[int32]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30312,7 +31832,7 @@ func (_ fastpathT) DecMapInt32UintV(v map[int32]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30325,7 +31845,7 @@ func (_ fastpathT) DecMapInt32UintV(v map[int32]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -30371,7 +31891,7 @@ func (_ fastpathT) DecMapInt32Uint8V(v map[int32]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30384,7 +31904,7 @@ func (_ fastpathT) DecMapInt32Uint8V(v map[int32]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -30430,7 +31950,7 @@ func (_ fastpathT) DecMapInt32Uint16V(v map[int32]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30443,7 +31963,7 @@ func (_ fastpathT) DecMapInt32Uint16V(v map[int32]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -30489,7 +32009,7 @@ func (_ fastpathT) DecMapInt32Uint32V(v map[int32]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30502,7 +32022,7 @@ func (_ fastpathT) DecMapInt32Uint32V(v map[int32]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -30548,7 +32068,7 @@ func (_ fastpathT) DecMapInt32Uint64V(v map[int32]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30561,7 +32081,7 @@ func (_ fastpathT) DecMapInt32Uint64V(v map[int32]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -30607,7 +32127,7 @@ func (_ fastpathT) DecMapInt32UintptrV(v map[int32]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30620,7 +32140,7 @@ func (_ fastpathT) DecMapInt32UintptrV(v map[int32]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -30666,7 +32186,7 @@ func (_ fastpathT) DecMapInt32IntV(v map[int32]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30679,7 +32199,7 @@ func (_ fastpathT) DecMapInt32IntV(v map[int32]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -30725,7 +32245,7 @@ func (_ fastpathT) DecMapInt32Int8V(v map[int32]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30738,7 +32258,7 @@ func (_ fastpathT) DecMapInt32Int8V(v map[int32]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -30784,7 +32304,7 @@ func (_ fastpathT) DecMapInt32Int16V(v map[int32]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30797,7 +32317,7 @@ func (_ fastpathT) DecMapInt32Int16V(v map[int32]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -30843,7 +32363,7 @@ func (_ fastpathT) DecMapInt32Int32V(v map[int32]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30856,7 +32376,7 @@ func (_ fastpathT) DecMapInt32Int32V(v map[int32]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -30902,7 +32422,7 @@ func (_ fastpathT) DecMapInt32Int64V(v map[int32]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30915,7 +32435,7 @@ func (_ fastpathT) DecMapInt32Int64V(v map[int32]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -30961,7 +32481,7 @@ func (_ fastpathT) DecMapInt32Float32V(v map[int32]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -30974,7 +32494,7 @@ func (_ fastpathT) DecMapInt32Float32V(v map[int32]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -31020,7 +32540,7 @@ func (_ fastpathT) DecMapInt32Float64V(v map[int32]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -31079,7 +32599,7 @@ func (_ fastpathT) DecMapInt32BoolV(v map[int32]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = int32(dd.DecodeInt(32)) + mk = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if esep { dd.ReadMapElemValue() } @@ -31139,7 +32659,7 @@ func (_ fastpathT) DecMapInt64IntfV(v map[int64]interface{}, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31203,7 +32723,7 @@ func (_ fastpathT) DecMapInt64StringV(v map[int64]string, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31262,7 +32782,7 @@ func (_ fastpathT) DecMapInt64UintV(v map[int64]uint, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31275,7 +32795,7 @@ func (_ fastpathT) DecMapInt64UintV(v map[int64]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -31321,7 +32841,7 @@ func (_ fastpathT) DecMapInt64Uint8V(v map[int64]uint8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31334,7 +32854,7 @@ func (_ fastpathT) DecMapInt64Uint8V(v map[int64]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -31380,7 +32900,7 @@ func (_ fastpathT) DecMapInt64Uint16V(v map[int64]uint16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31393,7 +32913,7 @@ func (_ fastpathT) DecMapInt64Uint16V(v map[int64]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -31439,7 +32959,7 @@ func (_ fastpathT) DecMapInt64Uint32V(v map[int64]uint32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31452,7 +32972,7 @@ func (_ fastpathT) DecMapInt64Uint32V(v map[int64]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -31498,7 +33018,7 @@ func (_ fastpathT) DecMapInt64Uint64V(v map[int64]uint64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31511,7 +33031,7 @@ func (_ fastpathT) DecMapInt64Uint64V(v map[int64]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -31557,7 +33077,7 @@ func (_ fastpathT) DecMapInt64UintptrV(v map[int64]uintptr, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31570,7 +33090,7 @@ func (_ fastpathT) DecMapInt64UintptrV(v map[int64]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -31616,7 +33136,7 @@ func (_ fastpathT) DecMapInt64IntV(v map[int64]int, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31629,7 +33149,7 @@ func (_ fastpathT) DecMapInt64IntV(v map[int64]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -31675,7 +33195,7 @@ func (_ fastpathT) DecMapInt64Int8V(v map[int64]int8, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31688,7 +33208,7 @@ func (_ fastpathT) DecMapInt64Int8V(v map[int64]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -31734,7 +33254,7 @@ func (_ fastpathT) DecMapInt64Int16V(v map[int64]int16, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31747,7 +33267,7 @@ func (_ fastpathT) DecMapInt64Int16V(v map[int64]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -31793,7 +33313,7 @@ func (_ fastpathT) DecMapInt64Int32V(v map[int64]int32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31806,7 +33326,7 @@ func (_ fastpathT) DecMapInt64Int32V(v map[int64]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -31852,7 +33372,7 @@ func (_ fastpathT) DecMapInt64Int64V(v map[int64]int64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31865,7 +33385,7 @@ func (_ fastpathT) DecMapInt64Int64V(v map[int64]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -31911,7 +33431,7 @@ func (_ fastpathT) DecMapInt64Float32V(v map[int64]float32, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -31924,7 +33444,7 @@ func (_ fastpathT) DecMapInt64Float32V(v map[int64]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } @@ -31970,7 +33490,7 @@ func (_ fastpathT) DecMapInt64Float64V(v map[int64]float64, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -32029,7 +33549,7 @@ func (_ fastpathT) DecMapInt64BoolV(v map[int64]bool, canChange bool, if esep { dd.ReadMapElemKey() } - mk = dd.DecodeInt(64) + mk = dd.DecodeInt64() if esep { dd.ReadMapElemValue() } @@ -32225,7 +33745,7 @@ func (_ fastpathT) DecMapBoolUintV(v map[bool]uint, canChange bool, } continue } - mv = uint(dd.DecodeUint(uintBitsize)) + mv = uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -32284,7 +33804,7 @@ func (_ fastpathT) DecMapBoolUint8V(v map[bool]uint8, canChange bool, } continue } - mv = uint8(dd.DecodeUint(8)) + mv = uint8(chkOvf.UintV(dd.DecodeUint64(), 8)) if v != nil { v[mk] = mv } @@ -32343,7 +33863,7 @@ func (_ fastpathT) DecMapBoolUint16V(v map[bool]uint16, canChange bool, } continue } - mv = uint16(dd.DecodeUint(16)) + mv = uint16(chkOvf.UintV(dd.DecodeUint64(), 16)) if v != nil { v[mk] = mv } @@ -32402,7 +33922,7 @@ func (_ fastpathT) DecMapBoolUint32V(v map[bool]uint32, canChange bool, } continue } - mv = uint32(dd.DecodeUint(32)) + mv = uint32(chkOvf.UintV(dd.DecodeUint64(), 32)) if v != nil { v[mk] = mv } @@ -32461,7 +33981,7 @@ func (_ fastpathT) DecMapBoolUint64V(v map[bool]uint64, canChange bool, } continue } - mv = dd.DecodeUint(64) + mv = dd.DecodeUint64() if v != nil { v[mk] = mv } @@ -32520,7 +34040,7 @@ func (_ fastpathT) DecMapBoolUintptrV(v map[bool]uintptr, canChange bool, } continue } - mv = uintptr(dd.DecodeUint(uintBitsize)) + mv = uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize)) if v != nil { v[mk] = mv } @@ -32579,7 +34099,7 @@ func (_ fastpathT) DecMapBoolIntV(v map[bool]int, canChange bool, } continue } - mv = int(dd.DecodeInt(intBitsize)) + mv = int(chkOvf.IntV(dd.DecodeInt64(), intBitsize)) if v != nil { v[mk] = mv } @@ -32638,7 +34158,7 @@ func (_ fastpathT) DecMapBoolInt8V(v map[bool]int8, canChange bool, } continue } - mv = int8(dd.DecodeInt(8)) + mv = int8(chkOvf.IntV(dd.DecodeInt64(), 8)) if v != nil { v[mk] = mv } @@ -32697,7 +34217,7 @@ func (_ fastpathT) DecMapBoolInt16V(v map[bool]int16, canChange bool, } continue } - mv = int16(dd.DecodeInt(16)) + mv = int16(chkOvf.IntV(dd.DecodeInt64(), 16)) if v != nil { v[mk] = mv } @@ -32756,7 +34276,7 @@ func (_ fastpathT) DecMapBoolInt32V(v map[bool]int32, canChange bool, } continue } - mv = int32(dd.DecodeInt(32)) + mv = int32(chkOvf.IntV(dd.DecodeInt64(), 32)) if v != nil { v[mk] = mv } @@ -32815,7 +34335,7 @@ func (_ fastpathT) DecMapBoolInt64V(v map[bool]int64, canChange bool, } continue } - mv = dd.DecodeInt(64) + mv = dd.DecodeInt64() if v != nil { v[mk] = mv } @@ -32874,7 +34394,7 @@ func (_ fastpathT) DecMapBoolFloat32V(v map[bool]float32, canChange bool, } continue } - mv = float32(chkFloat32(dd.DecodeFloat64())) + mv = float32(chkOvf.Float32V(dd.DecodeFloat64())) if v != nil { v[mk] = mv } diff --git a/codec/fast-path.go.tmpl b/codec/fast-path.go.tmpl index 300fa171..2023e05d 100644 --- a/codec/fast-path.go.tmpl +++ b/codec/fast-path.go.tmpl @@ -118,7 +118,7 @@ func fastpathEncodeTypeSwitch(iv interface{}, e *Encoder) bool { */}}{{end}}{{end}}{{end}} default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -142,7 +142,7 @@ func fastpathEncodeTypeSwitchSlice(iv interface{}, e *Encoder) bool { fastpathTV.{{ .MethodNamePfx "Enc" false }}V(*v, e) {{end}}{{end}}{{end}} default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -157,7 +157,7 @@ func fastpathEncodeTypeSwitchMap(iv interface{}, e *Encoder) bool { fastpathTV.{{ .MethodNamePfx "Enc" false }}V(*v, e) {{end}}{{end}}{{end}} default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -185,10 +185,20 @@ func (_ fastpathT) {{ .MethodNamePfx "Enc" false }}V(v []{{ .Elem }}, e *Encoder if v == nil { e.e.EncodeNil(); return } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteArrayStart(len(v)) + if esep { + for _, v2 := range v { + ee.WriteArrayElem() + {{ encmd .Elem "v2"}} + } + } else { + for _, v2 := range v { + {{ encmd .Elem "v2"}} + } + } {{/* for _, v2 := range v { if esep { ee.WriteArrayElem() } {{ encmd .Elem "v2"}} - } + } */}} ee.WriteArrayEnd() } func (_ fastpathT) {{ .MethodNamePfx "EncAsMap" false }}V(v []{{ .Elem }}, e *Encoder) { @@ -198,6 +208,20 @@ func (_ fastpathT) {{ .MethodNamePfx "EncAsMap" false }}V(v []{{ .Elem }}, e *En return } ee.WriteMapStart(len(v) / 2) + if esep { + for j, v2 := range v { + if j%2 == 0 { + ee.WriteMapElemKey() + } else { + ee.WriteMapElemValue() + } + {{ encmd .Elem "v2"}} + } + } else { + for _, v2 := range v { + {{ encmd .Elem "v2"}} + } + } {{/* for j, v2 := range v { if esep { if j%2 == 0 { @@ -207,7 +231,7 @@ func (_ fastpathT) {{ .MethodNamePfx "EncAsMap" false }}V(v []{{ .Elem }}, e *En } } {{ encmd .Elem "v2"}} - } + } */}} ee.WriteMapEnd() } {{end}}{{end}}{{end}} @@ -220,8 +244,7 @@ func (_ fastpathT) {{ .MethodNamePfx "Enc" false }}V(v map[{{ .MapKey }}]{{ .Ele if v == nil { e.e.EncodeNil(); return } ee, esep := e.e, e.hh.hasElemSeparators() ee.WriteMapStart(len(v)) - {{if eq .MapKey "string"}}asSymbols := e.h.AsSymbols&AsSymbolMapStringKeysFlag != 0 - {{end}}if e.h.Canonical { + if e.h.Canonical { {{if eq .MapKey "interface{}"}}{{/* out of band */}}var mksv []byte = make([]byte, 0, len(v)*16) // temporary byte slice for the encoding e2 := NewEncoderBytes(&mksv, e.hh) @@ -237,39 +260,70 @@ func (_ fastpathT) {{ .MethodNamePfx "Enc" false }}V(v map[{{ .MapKey }}]{{ .Ele i++ } sort.Sort(bytesISlice(v2)) + if esep { + for j := range v2 { + ee.WriteMapElemKey() + e.asis(v2[j].v) + ee.WriteMapElemValue() + e.encode(v[v2[j].i]) + } + } else { + for j := range v2 { + e.asis(v2[j].v) + e.encode(v[v2[j].i]) + } + } {{/* for j := range v2 { if esep { ee.WriteMapElemKey() } e.asis(v2[j].v) if esep { ee.WriteMapElemValue() } e.encode(v[v2[j].i]) - } {{else}}{{ $x := sorttype .MapKey true}}v2 := make([]{{ $x }}, len(v)) + } */}} {{else}}{{ $x := sorttype .MapKey true}}v2 := make([]{{ $x }}, len(v)) var i int for k, _ := range v { v2[i] = {{ $x }}(k) i++ } sort.Sort({{ sorttype .MapKey false}}(v2)) + if esep { + for _, k2 := range v2 { + ee.WriteMapElemKey() + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ $y := printf "%s(k2)" .MapKey }}{{ encmd .MapKey $y }}{{end}} + ee.WriteMapElemValue() + {{ $y := printf "v[%s(k2)]" .MapKey }}{{ encmd .Elem $y }} + } + } else { + for _, k2 := range v2 { + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ $y := printf "%s(k2)" .MapKey }}{{ encmd .MapKey $y }}{{end}} + {{ $y := printf "v[%s(k2)]" .MapKey }}{{ encmd .Elem $y }} + } + } {{/* for _, k2 := range v2 { if esep { ee.WriteMapElemKey() } - {{if eq .MapKey "string"}}if asSymbols { - ee.EncodeSymbol(k2) - } else { - ee.EncodeString(cUTF8, k2) - }{{else}}{{ $y := printf "%s(k2)" .MapKey }}{{ encmd .MapKey $y }}{{end}} + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ $y := printf "%s(k2)" .MapKey }}{{ encmd .MapKey $y }}{{end}} if esep { ee.WriteMapElemValue() } {{ $y := printf "v[%s(k2)]" .MapKey }}{{ encmd .Elem $y }} - } {{end}} + } */}} {{end}} } else { + if esep { + for k2, v2 := range v { + ee.WriteMapElemKey() + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ encmd .MapKey "k2"}}{{end}} + ee.WriteMapElemValue() + {{ encmd .Elem "v2"}} + } + } else { + for k2, v2 := range v { + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ encmd .MapKey "k2"}}{{end}} + {{ encmd .Elem "v2"}} + } + } {{/* for k2, v2 := range v { if esep { ee.WriteMapElemKey() } - {{if eq .MapKey "string"}}if asSymbols { - ee.EncodeSymbol(k2) - } else { - ee.EncodeString(cUTF8, k2) - }{{else}}{{ encmd .MapKey "k2"}}{{end}} + {{if eq .MapKey "string"}}ee.EncodeString(cUTF8, k2){{else}}{{ encmd .MapKey "k2"}}{{end}} if esep { ee.WriteMapElemValue() } {{ encmd .Elem "v2"}} - } + } */}} } ee.WriteMapEnd() } @@ -308,7 +362,7 @@ func fastpathDecodeTypeSwitch(iv interface{}, d *Decoder) bool { }{{/* */}}{{end}}{{end}}{{end}} default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true @@ -325,7 +379,7 @@ func fastpathDecodeSetZeroTypeSwitch(iv interface{}) bool { *v = nil {{/* */}}{{end}}{{end}}{{end}} default: - _ = v // TODO: workaround https://github.com/golang/go/issues/12927 (remove after go 1.6 release) + _ = v // workaround https://github.com/golang/go/issues/12927 seen in go1.4 return false } return true diff --git a/codec/gen-helper.generated.go b/codec/gen-helper.generated.go index 4c6fc1dd..b468ed5d 100644 --- a/codec/gen-helper.generated.go +++ b/codec/gen-helper.generated.go @@ -25,23 +25,51 @@ const GenVersion = 8 // When static codecs are created for types, they will use this value // to perform encoding or decoding of primitives or known slice or map types. +// GenHelperEncoder is exported so that it can be used externally by codecgen. +// +// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. +func GenHelperEncoder(e *Encoder) (ge genHelperEncoder, ee genHelperEncDriver) { + ge = genHelperEncoder{e: e} + ee = genHelperEncDriver{encDriver: e.e} + return +} + +// GenHelperDecoder is exported so that it can be used externally by codecgen. +// +// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. +func GenHelperDecoder(d *Decoder) (gd genHelperDecoder, dd genHelperDecDriver) { + gd = genHelperDecoder{d: d} + dd = genHelperDecDriver{decDriver: d.d} + return +} + type genHelperEncDriver struct { encDriver } func (x genHelperEncDriver) EncodeBuiltin(rt uintptr, v interface{}) {} func (x genHelperEncDriver) EncStructFieldKey(keyType valueType, s string) { - encStructFieldKey(x.encDriver, keyType, s, false) + encStructFieldKey(x.encDriver, keyType, s) +} +func (x genHelperEncDriver) EncodeSymbol(s string) { + x.encDriver.EncodeString(cUTF8, s) } type genHelperDecDriver struct { decDriver + c checkOverflow } func (x genHelperDecDriver) DecodeBuiltin(rt uintptr, v interface{}) {} func (x genHelperDecDriver) DecStructFieldKey(keyType valueType, buf *[scratchByteArrayLen]byte) []byte { return decStructFieldKey(x.decDriver, keyType, buf) } +func (x genHelperDecDriver) DecodeInt(bitsize uint8) (i int64) { + return x.c.IntV(x.decDriver.DecodeInt64(), bitsize) +} +func (x genHelperDecDriver) DecodeUint(bitsize uint8) (ui uint64) { + return x.c.UintV(x.decDriver.DecodeUint64(), bitsize) +} func (x genHelperDecDriver) DecodeFloat(chkOverflow32 bool) (f float64) { f = x.DecodeFloat64() if chkOverflow32 && chkOvf.Float32(f) { @@ -57,24 +85,6 @@ func (x genHelperDecDriver) DecodeFloat32As64() (f float64) { return } -// GenHelperEncoder is exported so that it can be used externally by codecgen. -// -// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. -func GenHelperEncoder(e *Encoder) (ge genHelperEncoder, ee genHelperEncDriver) { - ge = genHelperEncoder{e: e} - ee = genHelperEncDriver{e.e} - return -} - -// GenHelperDecoder is exported so that it can be used externally by codecgen. -// -// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. -func GenHelperDecoder(d *Decoder) (gd genHelperDecoder, dd genHelperDecDriver) { - gd = genHelperDecoder{d: d} - dd = genHelperDecDriver{d.d} - return -} - // FOR USE BY CODECGEN ONLY. IT *WILL* CHANGE WITHOUT NOTICE. *DO NOT USE* type genHelperEncoder struct { e *Encoder @@ -83,6 +93,7 @@ type genHelperEncoder struct { // FOR USE BY CODECGEN ONLY. IT *WILL* CHANGE WITHOUT NOTICE. *DO NOT USE* type genHelperDecoder struct { + c checkOverflow d *Decoder F fastpathT } diff --git a/codec/gen-helper.go.tmpl b/codec/gen-helper.go.tmpl index e04a9797..0efa8f60 100644 --- a/codec/gen-helper.go.tmpl +++ b/codec/gen-helper.go.tmpl @@ -25,23 +25,51 @@ const GenVersion = {{ .Version }} // When static codecs are created for types, they will use this value // to perform encoding or decoding of primitives or known slice or map types. +// GenHelperEncoder is exported so that it can be used externally by codecgen. +// +// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. +func GenHelperEncoder(e *Encoder) (ge genHelperEncoder, ee genHelperEncDriver) { + ge = genHelperEncoder{e: e} + ee = genHelperEncDriver{encDriver: e.e} + return +} + +// GenHelperDecoder is exported so that it can be used externally by codecgen. +// +// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. +func GenHelperDecoder(d *Decoder) (gd genHelperDecoder, dd genHelperDecDriver) { + gd = genHelperDecoder{d: d} + dd = genHelperDecDriver{decDriver: d.d} + return +} + type genHelperEncDriver struct { encDriver } func (x genHelperEncDriver) EncodeBuiltin(rt uintptr, v interface{}) {} func (x genHelperEncDriver) EncStructFieldKey(keyType valueType, s string) { - encStructFieldKey(x.encDriver, keyType, s, false) + encStructFieldKey(x.encDriver, keyType, s) +} +func (x genHelperEncDriver) EncodeSymbol(s string) { + x.encDriver.EncodeString(cUTF8, s) } type genHelperDecDriver struct { decDriver + c checkOverflow } func (x genHelperDecDriver) DecodeBuiltin(rt uintptr, v interface{}) {} func (x genHelperDecDriver) DecStructFieldKey(keyType valueType, buf *[scratchByteArrayLen]byte) []byte { return decStructFieldKey(x.decDriver, keyType, buf) } +func (x genHelperDecDriver) DecodeInt(bitsize uint8) (i int64) { + return x.c.IntV(x.decDriver.DecodeInt64(), bitsize) +} +func (x genHelperDecDriver) DecodeUint(bitsize uint8) (ui uint64) { + return x.c.UintV(x.decDriver.DecodeUint64(), bitsize) +} func (x genHelperDecDriver) DecodeFloat(chkOverflow32 bool) (f float64) { f = x.DecodeFloat64() if chkOverflow32 && chkOvf.Float32(f) { @@ -57,24 +85,6 @@ func (x genHelperDecDriver) DecodeFloat32As64() (f float64) { return } -// GenHelperEncoder is exported so that it can be used externally by codecgen. -// -// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. -func GenHelperEncoder(e *Encoder) (ge genHelperEncoder, ee genHelperEncDriver) { - ge = genHelperEncoder{e:e} - ee = genHelperEncDriver{e.e} - return -} - -// GenHelperDecoder is exported so that it can be used externally by codecgen. -// -// Library users: DO NOT USE IT DIRECTLY. IT WILL CHANGE CONTINOUSLY WITHOUT NOTICE. -func GenHelperDecoder(d *Decoder) (gd genHelperDecoder, dd genHelperDecDriver) { - gd = genHelperDecoder{d:d} - dd = genHelperDecDriver{d.d} - return -} - // FOR USE BY CODECGEN ONLY. IT *WILL* CHANGE WITHOUT NOTICE. *DO NOT USE* type genHelperEncoder struct { e *Encoder @@ -83,6 +93,7 @@ type genHelperEncoder struct { // FOR USE BY CODECGEN ONLY. IT *WILL* CHANGE WITHOUT NOTICE. *DO NOT USE* type genHelperDecoder struct { + c checkOverflow d *Decoder F fastpathT } diff --git a/codec/gen.go b/codec/gen.go index 24f78115..c64cf6c3 100644 --- a/codec/gen.go +++ b/codec/gen.go @@ -1211,38 +1211,38 @@ func (x *genRunner) dec(varname string, t reflect.Type) { // Since these are pointers, we cannot share, and have to use them one by one switch t.Kind() { case reflect.Int: - x.line("*((*int)(" + varname + ")) = int(r.DecodeInt(codecSelferBitsize" + x.xs + "))") + x.line("*((*int)(" + varname + ")) = int(z.c.IntV(r.DecodeInt64(), codecSelferBitsize" + x.xs + "))") // x.line("z.DecInt((*int)(" + varname + "))") case reflect.Int8: - x.line("*((*int8)(" + varname + ")) = int8(r.DecodeInt(8))") + x.line("*((*int8)(" + varname + ")) = int8(z.c.IntV(r.DecodeInt64(), 8))") // x.line("z.DecInt8((*int8)(" + varname + "))") case reflect.Int16: - x.line("*((*int16)(" + varname + ")) = int16(r.DecodeInt(16))") + x.line("*((*int16)(" + varname + ")) = int16(z.c.IntV(r.DecodeInt64(), 16))") // x.line("z.DecInt16((*int16)(" + varname + "))") case reflect.Int32: - x.line("*((*int32)(" + varname + ")) = int32(r.DecodeInt(32))") + x.line("*((*int32)(" + varname + ")) = int32(z.c.IntV(r.DecodeInt64(), 32))") // x.line("z.DecInt32((*int32)(" + varname + "))") case reflect.Int64: - x.line("*((*int64)(" + varname + ")) = int64(r.DecodeInt(64))") + x.line("*((*int64)(" + varname + ")) = int64(r.DecodeInt64())") // x.line("z.DecInt64((*int64)(" + varname + "))") case reflect.Uint: - x.line("*((*uint)(" + varname + ")) = uint(r.DecodeUint(codecSelferBitsize" + x.xs + "))") + x.line("*((*uint)(" + varname + ")) = uint(z.c.UintV(r.DecodeUint64(), codecSelferBitsize" + x.xs + "))") // x.line("z.DecUint((*uint)(" + varname + "))") case reflect.Uint8: - x.line("*((*uint8)(" + varname + ")) = uint8(r.DecodeUint(8))") + x.line("*((*uint8)(" + varname + ")) = uint8(z.c.UintV(r.DecodeUint64(), 8))") // x.line("z.DecUint8((*uint8)(" + varname + "))") case reflect.Uint16: - x.line("*((*uint16)(" + varname + ")) = uint16(r.DecodeUint(16))") + x.line("*((*uint16)(" + varname + ")) = uint16(z.c.UintV(r.DecodeUint64(), 16))") //x.line("z.DecUint16((*uint16)(" + varname + "))") case reflect.Uint32: - x.line("*((*uint32)(" + varname + ")) = uint32(r.DecodeUint(32))") + x.line("*((*uint32)(" + varname + ")) = uint32(z.c.UintV(r.DecodeUint64(), 32))") //x.line("z.DecUint32((*uint32)(" + varname + "))") case reflect.Uint64: - x.line("*((*uint64)(" + varname + ")) = uint64(r.DecodeUint(64))") + x.line("*((*uint64)(" + varname + ")) = uint64(r.DecodeUint64())") //x.line("z.DecUint64((*uint64)(" + varname + "))") case reflect.Uintptr: - x.line("*((*uintptr)(" + varname + ")) = uintptr(r.DecodeUint(codecSelferBitsize" + x.xs + "))") + x.line("*((*uintptr)(" + varname + ")) = uintptr(z.c.UintV(r.DecodeUint64(), codecSelferBitsize" + x.xs + "))") case reflect.Float32: x.line("*((*float32)(" + varname + ")) = float32(r.DecodeFloat32As64())") @@ -1314,28 +1314,28 @@ func (x *genRunner) decTryAssignPrimitive(varname string, t reflect.Type) (tryAs switch t.Kind() { case reflect.Int: - x.linef("%s = r.DecodeInt(codecSelferBitsize%s)", varname, x.xs) + x.linef("%s = z.c.IntV(r.DecodeInt64(), codecSelferBitsize%s)", varname, x.xs) case reflect.Int8: - x.linef("%s = r.DecodeInt(8)", varname) + x.linef("%s = z.c.IntV(r.DecodeInt64(), 8)", varname) case reflect.Int16: - x.linef("%s = r.DecodeInt(16)", varname) + x.linef("%s = z.c.IntV(r.DecodeInt64(), 16)", varname) case reflect.Int32: - x.linef("%s = r.DecodeInt(32)", varname) + x.linef("%s = z.c.IntV(r.DecodeInt64(), 32)", varname) case reflect.Int64: - x.linef("%s = r.DecodeInt(64)", varname) + x.linef("%s = r.DecodeInt64()", varname) case reflect.Uint: - x.linef("%s = r.DecodeUint(codecSelferBitsize%s)", varname, x.xs) + x.linef("%s = z.c.UintV(r.DecodeUint64(), codecSelferBitsize%s)", varname, x.xs) case reflect.Uint8: - x.linef("%s = r.DecodeUint(8)", varname) + x.linef("%s = z.c.UintV(r.DecodeUint64(), 8)", varname) case reflect.Uint16: - x.linef("%s = r.DecodeUint(16)", varname) + x.linef("%s = z.c.UintV(r.DecodeUint64(), 16)", varname) case reflect.Uint32: - x.linef("%s = r.DecodeUint(32)", varname) + x.linef("%s = z.c.UintV(r.DecodeUint64(), 32)", varname) case reflect.Uint64: - x.linef("%s = r.DecodeUint(64)", varname) + x.linef("%s = r.DecodeUint64()", varname) case reflect.Uintptr: - x.linef("%s = r.DecodeUint(codecSelferBitsize%s)", varname, x.xs) + x.linef("%s = z.c.UintV(r.DecodeUint64(), codecSelferBitsize%s)", varname, x.xs) case reflect.Float32: x.linef("%s = r.DecodeFloat32As64()", varname) @@ -1865,8 +1865,8 @@ func genInternalEncCommandAsString(s string, vname string) string { return "ee.EncodeFloat64(" + vname + ")" case "bool": return "ee.EncodeBool(" + vname + ")" - case "symbol": - return "ee.EncodeSymbol(" + vname + ")" + // case "symbol": + // return "ee.EncodeSymbol(" + vname + ")" default: return "e.encode(" + vname + ")" } @@ -1875,32 +1875,32 @@ func genInternalEncCommandAsString(s string, vname string) string { func genInternalDecCommandAsString(s string) string { switch s { case "uint": - return "uint(dd.DecodeUint(uintBitsize))" + return "uint(chkOvf.UintV(dd.DecodeUint64(), uintBitsize))" case "uint8": - return "uint8(dd.DecodeUint(8))" + return "uint8(chkOvf.UintV(dd.DecodeUint64(), 8))" case "uint16": - return "uint16(dd.DecodeUint(16))" + return "uint16(chkOvf.UintV(dd.DecodeUint64(), 16))" case "uint32": - return "uint32(dd.DecodeUint(32))" + return "uint32(chkOvf.UintV(dd.DecodeUint64(), 32))" case "uint64": - return "dd.DecodeUint(64)" + return "dd.DecodeUint64()" case "uintptr": - return "uintptr(dd.DecodeUint(uintBitsize))" + return "uintptr(chkOvf.UintV(dd.DecodeUint64(), uintBitsize))" case "int": - return "int(dd.DecodeInt(intBitsize))" + return "int(chkOvf.IntV(dd.DecodeInt64(), intBitsize))" case "int8": - return "int8(dd.DecodeInt(8))" + return "int8(chkOvf.IntV(dd.DecodeInt64(), 8))" case "int16": - return "int16(dd.DecodeInt(16))" + return "int16(chkOvf.IntV(dd.DecodeInt64(), 16))" case "int32": - return "int32(dd.DecodeInt(32))" + return "int32(chkOvf.IntV(dd.DecodeInt64(), 32))" case "int64": - return "dd.DecodeInt(64)" + return "dd.DecodeInt64()" case "string": return "dd.DecodeString()" case "float32": - return "float32(chkFloat32(dd.DecodeFloat64()))" + return "float32(chkOvf.Float32V(dd.DecodeFloat64()))" case "float64": return "dd.DecodeFloat64()" case "bool": diff --git a/codec/helper.go b/codec/helper.go index 2804f01f..55633aec 100644 --- a/codec/helper.go +++ b/codec/helper.go @@ -565,7 +565,7 @@ type setExtWrapper struct { func (x *setExtWrapper) check(v bool, s string) { if v { - panic(fmt.Errorf("%s is not supported", s)) + panicv.errorf("%s is not supported", s) } } func (x *setExtWrapper) WriteExt(v interface{}) []byte { @@ -1072,7 +1072,7 @@ func (x *TypeInfos) get(rtid uintptr, rt reflect.Type) (pti *typeInfo) { rk := rt.Kind() if rk == reflect.Ptr { // || (rk == reflect.Interface && rtid != intfTypId) { - panic(fmt.Errorf("invalid kind passed to TypeInfos.get: %v - %v", rk, rt)) + panicv.errorf("invalid kind passed to TypeInfos.get: %v - %v", rk, rt) } // do not hold lock while computing this. @@ -1110,25 +1110,38 @@ func (x *TypeInfos) get(rtid uintptr, rt reflect.Type) (pti *typeInfo) { } // sfi = sfip - var vs []rtid2ti x.mu.Lock() sp = x.infos.load() if sp == nil { pti = &ti - vs = []rtid2ti{{rtid, pti}} + vs := append(make([]rtid2ti, 0, 16), rtid2ti{rtid, pti}) x.infos.store(&vs) } else { idx, pti = x.find(sp, rtid) if pti == nil { - s := *sp pti = &ti - vs = make([]rtid2ti, len(s)+1) - copy(vs, s[:idx]) + vs := append(*sp, rtid2ti{}) + copy(vs[idx+1:], vs[idx:]) vs[idx] = rtid2ti{rtid, pti} - copy(vs[idx+1:], s[idx:]) x.infos.store(&vs) } } + // if sp == nil { + // pti = &ti + // vs := []rtid2ti{{rtid, pti}} + // x.infos.store(&vs) + // } else { + // idx, pti = x.find(sp, rtid) + // if pti == nil { + // s := *sp + // pti = &ti + // vs := make([]rtid2ti, len(s)+1) + // copy(vs, s[:idx]) + // vs[idx] = rtid2ti{rtid, pti} + // copy(vs[idx+1:], s[idx:]) + // x.infos.store(&vs) + // } + // } x.mu.Unlock() return } @@ -1146,7 +1159,7 @@ func (x *TypeInfos) rget(rt reflect.Type, rtid uintptr, omitEmpty bool, // and iteration using equals is faster than maps there flen := rt.NumField() if flen > (1< maxLevelsEmbedding-1 { - panic(fmt.Errorf("codec: only supports up to %v depth of embedding - type has %v depth", maxLevelsEmbedding-1, len(indexstack))) + panicv.errorf("codec: only supports up to %v depth of embedding - type has %v depth", maxLevelsEmbedding-1, len(indexstack)) } si.nis = uint8(len(indexstack)) + 1 copy(si.is[:], indexstack) @@ -1261,7 +1274,7 @@ LOOP: func rgetResolveSFI(x []*structFieldInfo, pv []sfiIdx) (y, z []*structFieldInfo, anyOmitEmpty bool) { var n int for i, v := range x { - xn := v.encName // TODO: fieldName or encName? use encName for now. + xn := v.encName // fieldName or encName? use encName for now. var found bool for j, k := range pv { if k.name == xn { @@ -1353,7 +1366,8 @@ func panicValToErr(h errstrDecorator, v interface{}, err *error) { case error: switch xerr { case nil: - case io.EOF, io.ErrUnexpectedEOF, errEncoderNotInitialized: // treat as special (bubble up) + case io.EOF, io.ErrUnexpectedEOF, errEncoderNotInitialized, errDecoderNotInitialized: + // treat as special (bubble up) *err = xerr default: h.wrapErrstr(xerr.Error(), err) @@ -1362,6 +1376,10 @@ func panicValToErr(h errstrDecorator, v interface{}, err *error) { if xerr != "" { h.wrapErrstr(xerr, err) } + case fmt.Stringer: + if xerr != nil { + h.wrapErrstr(xerr.String(), err) + } default: h.wrapErrstr(v, err) } @@ -1371,7 +1389,7 @@ func panicValToErr(h errstrDecorator, v interface{}, err *error) { // params2 := make([]interface{}, len(params)+1) // params2[0] = tag // copy(params2[1:], params) -// panic(fmt.Errorf("%s: "+format, params2...)) +// panicv.errorf("%s: "+format, params2...) // } func isImmutableKind(k reflect.Kind) (v bool) { @@ -1673,14 +1691,6 @@ func (c *codecFner) get(rt reflect.Type, checkFastpath, checkCodecSelfer bool) ( // ---- -func chkFloat32(f float64) (f32 float32) { - // f32 = float32(f) - if chkOvf.Float32(f) { - panicv.errorf("float32 overflow: %v", f) - } - return float32(f) -} - // these "checkOverflow" functions must be inlinable, and not call anybody. // Overflow means that the value cannot be represented without wrapping/overflow. // Overflow=false does not mean that the value can be represented without losing precision @@ -1696,13 +1706,12 @@ type checkOverflow struct{} // return math.MaxFloat32 < f && f <= math.MaxFloat64 // } -func (checkOverflow) Float32(f float64) (overflow bool) { - if f < 0 { - f = -f +func (checkOverflow) Float32(v float64) (overflow bool) { + if v < 0 { + v = -v } - return math.MaxFloat32 < f && f <= math.MaxFloat64 + return math.MaxFloat32 < v && v <= math.MaxFloat64 } - func (checkOverflow) Uint(v uint64, bitsize uint8) (overflow bool) { if bitsize == 0 || bitsize >= 64 || v == 0 { return @@ -1712,7 +1721,6 @@ func (checkOverflow) Uint(v uint64, bitsize uint8) (overflow bool) { } return } - func (checkOverflow) Int(v int64, bitsize uint8) (overflow bool) { if bitsize == 0 || bitsize >= 64 || v == 0 { return @@ -1722,27 +1730,47 @@ func (checkOverflow) Int(v int64, bitsize uint8) (overflow bool) { } return } - -func (checkOverflow) SignedInt(v uint64) (i int64, overflow bool) { +func (checkOverflow) SignedInt(v uint64) (overflow bool) { //e.g. -127 to 128 for int8 pos := (v >> 63) == 0 ui2 := v & 0x7fffffffffffffff if pos { if ui2 > math.MaxInt64 { overflow = true - } else { - i = int64(v) } } else { if ui2 > math.MaxInt64-1 { overflow = true - } else { - i = int64(v) } } return } +func (x checkOverflow) Float32V(v float64) float64 { + if x.Float32(v) { + panicv.errorf("float32 overflow: %v", v) + } + return v +} +func (x checkOverflow) UintV(v uint64, bitsize uint8) uint64 { + if x.Uint(v, bitsize) { + panicv.errorf("uint64 overflow: %v", v) + } + return v +} +func (x checkOverflow) IntV(v int64, bitsize uint8) int64 { + if x.Int(v, bitsize) { + panicv.errorf("int64 overflow: %v", v) + } + return v +} +func (x checkOverflow) SignedIntV(v uint64) int64 { + if x.SignedInt(v) { + panicv.errorf("uint64 to int64 overflow: %v", v) + } + return int64(v) +} + // ------------------ SORT ----------------- func isNaN(f float64) bool { return f != f } diff --git a/codec/helper_not_unsafe.go b/codec/helper_not_unsafe.go index e8a82886..466d0d32 100644 --- a/codec/helper_not_unsafe.go +++ b/codec/helper_not_unsafe.go @@ -129,47 +129,47 @@ func (d *Decoder) kFloat64(f *codecFnInfo, rv reflect.Value) { } func (d *Decoder) kInt(f *codecFnInfo, rv reflect.Value) { - rv.SetInt(d.d.DecodeInt(intBitsize)) + rv.SetInt(chkOvf.IntV(d.d.DecodeInt64(), intBitsize)) } func (d *Decoder) kInt8(f *codecFnInfo, rv reflect.Value) { - rv.SetInt(d.d.DecodeInt(8)) + rv.SetInt(chkOvf.IntV(d.d.DecodeInt64(), 8)) } func (d *Decoder) kInt16(f *codecFnInfo, rv reflect.Value) { - rv.SetInt(d.d.DecodeInt(16)) + rv.SetInt(chkOvf.IntV(d.d.DecodeInt64(), 16)) } func (d *Decoder) kInt32(f *codecFnInfo, rv reflect.Value) { - rv.SetInt(d.d.DecodeInt(32)) + rv.SetInt(chkOvf.IntV(d.d.DecodeInt64(), 32)) } func (d *Decoder) kInt64(f *codecFnInfo, rv reflect.Value) { - rv.SetInt(d.d.DecodeInt(64)) + rv.SetInt(d.d.DecodeInt64()) } func (d *Decoder) kUint(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(uintBitsize)) + rv.SetUint(chkOvf.UintV(d.d.DecodeUint64(), uintBitsize)) } func (d *Decoder) kUintptr(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(uintBitsize)) + rv.SetUint(chkOvf.UintV(d.d.DecodeUint64(), uintBitsize)) } func (d *Decoder) kUint8(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(8)) + rv.SetUint(chkOvf.UintV(d.d.DecodeUint64(), 8)) } func (d *Decoder) kUint16(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(16)) + rv.SetUint(chkOvf.UintV(d.d.DecodeUint64(), 16)) } func (d *Decoder) kUint32(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(32)) + rv.SetUint(chkOvf.UintV(d.d.DecodeUint64(), 32)) } func (d *Decoder) kUint64(f *codecFnInfo, rv reflect.Value) { - rv.SetUint(d.d.DecodeUint(64)) + rv.SetUint(d.d.DecodeUint64()) } // ---------------- diff --git a/codec/helper_unsafe.go b/codec/helper_unsafe.go index c7d72050..e5e7af3c 100644 --- a/codec/helper_unsafe.go +++ b/codec/helper_unsafe.go @@ -189,57 +189,57 @@ func (d *Decoder) kFloat64(f *codecFnInfo, rv reflect.Value) { func (d *Decoder) kInt(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*int)(urv.ptr) = int(d.d.DecodeInt(intBitsize)) + *(*int)(urv.ptr) = int(chkOvf.IntV(d.d.DecodeInt64(), intBitsize)) } func (d *Decoder) kInt8(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*int8)(urv.ptr) = int8(d.d.DecodeInt(8)) + *(*int8)(urv.ptr) = int8(chkOvf.IntV(d.d.DecodeInt64(), 8)) } func (d *Decoder) kInt16(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*int16)(urv.ptr) = int16(d.d.DecodeInt(16)) + *(*int16)(urv.ptr) = int16(chkOvf.IntV(d.d.DecodeInt64(), 16)) } func (d *Decoder) kInt32(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*int32)(urv.ptr) = int32(d.d.DecodeInt(32)) + *(*int32)(urv.ptr) = int32(chkOvf.IntV(d.d.DecodeInt64(), 32)) } func (d *Decoder) kInt64(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*int64)(urv.ptr) = d.d.DecodeInt(64) + *(*int64)(urv.ptr) = d.d.DecodeInt64() } func (d *Decoder) kUint(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uint)(urv.ptr) = uint(d.d.DecodeUint(uintBitsize)) + *(*uint)(urv.ptr) = uint(chkOvf.UintV(d.d.DecodeUint64(), uintBitsize)) } func (d *Decoder) kUintptr(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uintptr)(urv.ptr) = uintptr(d.d.DecodeUint(uintBitsize)) + *(*uintptr)(urv.ptr) = uintptr(chkOvf.UintV(d.d.DecodeUint64(), uintBitsize)) } func (d *Decoder) kUint8(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uint8)(urv.ptr) = uint8(d.d.DecodeUint(8)) + *(*uint8)(urv.ptr) = uint8(chkOvf.UintV(d.d.DecodeUint64(), 8)) } func (d *Decoder) kUint16(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uint16)(urv.ptr) = uint16(d.d.DecodeUint(16)) + *(*uint16)(urv.ptr) = uint16(chkOvf.UintV(d.d.DecodeUint64(), 16)) } func (d *Decoder) kUint32(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uint32)(urv.ptr) = uint32(d.d.DecodeUint(32)) + *(*uint32)(urv.ptr) = uint32(chkOvf.UintV(d.d.DecodeUint64(), 32)) } func (d *Decoder) kUint64(f *codecFnInfo, rv reflect.Value) { urv := (*unsafeReflectValue)(unsafe.Pointer(&rv)) - *(*uint64)(urv.ptr) = d.d.DecodeUint(64) + *(*uint64)(urv.ptr) = d.d.DecodeUint64() } // ------------ diff --git a/codec/json.go b/codec/json.go index 17f3947f..dbb9fb41 100644 --- a/codec/json.go +++ b/codec/json.go @@ -87,7 +87,8 @@ var ( jsonNumSet bitset256 // jsonIsFloatSet bitset256 - jsonU4Set [256]byte + jsonU4Set [256]byte + jsonContainerSet [256]valueType ) const ( @@ -156,6 +157,21 @@ func init() { // jsonIsFloatSet.set(i) // } } + for j := range jsonContainerSet { + switch i = byte(j); i { + case '{': + jsonContainerSet[j] = valueTypeMap + case '[': + jsonContainerSet[j] = valueTypeArray + case 'n': + jsonContainerSet[j] = valueTypeNil + case '"': + jsonContainerSet[j] = valueTypeString + default: + jsonContainerSet[j] = valueTypeUnset + } + } + // jsonU4Set[255] = jsonU4SetErrVal } @@ -312,6 +328,9 @@ func (e *jsonEncDriver) EncodeBool(b bool) { func (e *jsonEncDriver) EncodeFloat32(f float32) { // e.encodeFloat(float64(f), 32) + // always encode all floats as IEEE 64-bit floating point. + // It also ensures that we can decode in full precision even if into a float32, + // as what is written is always to float64 precision. e.EncodeFloat64(float64(f)) } @@ -347,42 +366,6 @@ func (e *jsonEncDriver) EncodeFloat64(f float64) { e.w.writeb(e.b[:blen]) } -// func (e *jsonEncDriver) EncodeFloat64(f float64) { -// e.encodeFloat(f, 64) -// } - -// func (e *jsonEncDriver) encodeFloat(f float64, bits int) { -// var blen int -// // instead of using 'g', specify whether to use 'e' or 'f' -// var abs = math.Abs(f) -// var fmt byte -// var prec int = -1 -// if abs != 0 && (bits == 64 && (abs < 1e-6 || abs >= 1e21) || bits == 32 && (float32(abs) < 1e-6 || float32(abs) >= 1e21)) { -// fmt = 'e' -// } else { -// fmt = 'f' -// // set prec to 1 iff mod is 0. -// // better than using jsonIsFloatBytesB2 to check if a . or E in the float bytes. -// // this ensures that every float has an e or .0 in it. -// if abs <= 1 { -// if abs == 0 || abs == 1 { -// prec = 1 -// } -// } else if _, mod := math.Modf(abs); mod == 0 { -// prec = 1 -// } -// } - -// if e.h.MapKeyAsString && e.c == containerMapKey { -// blen = 2 + len(strconv.AppendFloat(e.b[1:1], f, fmt, prec, bits)) -// e.b[0] = '"' -// e.b[blen-1] = '"' -// } else { -// blen = len(strconv.AppendFloat(e.b[:0], f, fmt, prec, bits)) -// } -// e.w.writeb(e.b[:blen]) -// } - func (e *jsonEncDriver) EncodeInt(v int64) { x := e.h.IntegerAsString if x == 'A' || x == 'L' && (v > 1<<53 || v < -(1<<53)) || (e.h.MapKeyAsString && e.c == containerMapKey) { @@ -428,9 +411,9 @@ func (e *jsonEncDriver) EncodeString(c charEncoding, v string) { e.quoteStr(v) } -func (e *jsonEncDriver) EncodeSymbol(v string) { - e.quoteStr(v) -} +// func (e *jsonEncDriver) EncodeSymbol(v string) { +// e.quoteStr(v) +// } func (e *jsonEncDriver) EncodeStringBytes(c charEncoding, v []byte) { // if encoding raw bytes and RawBytesExt is configured, use it to encode @@ -582,7 +565,7 @@ func (d *jsonDecDriver) ReadMapStart() int { } const xc uint8 = '{' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 d.c = containerMapStart @@ -595,7 +578,7 @@ func (d *jsonDecDriver) ReadArrayStart() int { } const xc uint8 = '[' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 d.c = containerArrayStart @@ -616,7 +599,7 @@ func (d *jsonDecDriver) ReadArrayElem() { if d.c != containerArrayStart { const xc uint8 = ',' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 } @@ -629,7 +612,7 @@ func (d *jsonDecDriver) ReadArrayEnd() { } const xc uint8 = ']' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 d.c = containerArrayEnd @@ -642,7 +625,7 @@ func (d *jsonDecDriver) ReadMapElemKey() { if d.c != containerMapStart { const xc uint8 = ',' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 } @@ -655,7 +638,7 @@ func (d *jsonDecDriver) ReadMapElemValue() { } const xc uint8 = ':' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 d.c = containerMapValue @@ -667,7 +650,7 @@ func (d *jsonDecDriver) ReadMapEnd() { } const xc uint8 = '}' if d.tok != xc { - d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) + d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) } d.tok = 0 d.c = containerMapEnd @@ -679,7 +662,7 @@ func (d *jsonDecDriver) ReadMapEnd() { // } // if check { // if d.tok != xc { -// d.d.errorf("json: expect char '%c' but got char '%c'", xc, d.tok) +// d.d.errorf("expect char '%c' but got char '%c'", xc, d.tok) // } // d.tok = 0 // } @@ -690,7 +673,7 @@ func (d *jsonDecDriver) readLit(length, fromIdx uint8) { bs := d.r.readx(int(length)) d.tok = 0 if jsonValidateSymbols && !bytes.Equal(bs, jsonLiterals[fromIdx:fromIdx+length]) { - d.d.errorf("json: expecting %s: got %s", jsonLiterals[fromIdx:fromIdx+length], bs) + d.d.errorf("expecting %s: got %s", jsonLiterals[fromIdx:fromIdx+length], bs) return } } @@ -724,7 +707,7 @@ func (d *jsonDecDriver) DecodeBool() (v bool) { d.readLit(3, jsonLitTrue+1) // (t)rue v = true default: - d.d.errorf("json: decode bool: got first char %c", d.tok) + d.d.errorf("decode bool: got first char %c", d.tok) // v = false // "unreachable" } if fquot { @@ -751,6 +734,24 @@ func (d *jsonDecDriver) ContainerType() (vt valueType) { if d.tok == 0 { d.tok = d.r.skip(&jsonCharWhitespaceSet) } + + // optimize this, so we don't do 4 checks but do one computation. + // return jsonContainerSet[d.tok] + + // switch d.tok { + // case '{': + // return valueTypeMap + // case '[': + // return valueTypeArray + // case 'n': + // return valueTypeNil + // case '"': + // return valueTypeString + // } + // return valueTypeUnset + + // ContainerType is mostly called for Map and Array, + // so this conditional is good enough (max 2 checks typically) if b := d.tok; b == '{' { return valueTypeMap } else if b == '[' { @@ -761,6 +762,7 @@ func (d *jsonDecDriver) ContainerType() (vt valueType) { return valueTypeString } return valueTypeUnset + // d.d.errorf("isContainerType: unsupported parameter: %v", vt) // return false // "unreachable" } @@ -781,19 +783,19 @@ func (d *jsonDecDriver) decNumBytes() (bs []byte) { return bs } -func (d *jsonDecDriver) DecodeUint(bitsize uint8) (u uint64) { +func (d *jsonDecDriver) DecodeUint64() (u uint64) { bs := d.decNumBytes() - u, err := strconv.ParseUint(stringView(bs), 10, int(bitsize)) + u, err := strconv.ParseUint(stringView(bs), 10, 64) if err != nil { - d.d.errorf("json: decode uint from %s: %v", bs, err) + d.d.errorf("decode uint from %s: %v", bs, err) return } return } -func (d *jsonDecDriver) DecodeInt(bitsize uint8) (i int64) { +func (d *jsonDecDriver) DecodeInt64() (i int64) { bs := d.decNumBytes() - i, err := strconv.ParseInt(stringView(bs), 10, int(bitsize)) + i, err := strconv.ParseInt(stringView(bs), 10, 64) if err != nil { d.d.errorv(err) } @@ -859,7 +861,7 @@ func (d *jsonDecDriver) DecodeBytes(bs []byte, zerocopy bool) (bsOut []byte) { } slen2, err := base64.StdEncoding.Decode(bsOut, bs0) if err != nil { - d.d.errorf("json: error decoding base64 binary '%s': %v", bs0, err) + d.d.errorf("error decoding base64 binary '%s': %v", bs0, err) return nil } if slen != slen2 { @@ -885,7 +887,7 @@ func (d *jsonDecDriver) appendStringAsBytes() { d.fnull = false if d.tok != '"' { - // d.d.errorf("json: expect char '%c' but got char '%c'", '"', d.tok) + // d.d.errorf("expect char '%c' but got char '%c'", '"', d.tok) // handle non-string scalar: null, true, false or a number switch d.tok { case 'n': @@ -1002,7 +1004,7 @@ func (d *jsonDecDriver) appendStringAsBytes() { w2 := utf8.EncodeRune(d.bstr[:], r) v = append(v, d.bstr[:w2]...) default: - d.d.errorf("json: unsupported escaped value: %c", c) + d.d.errorf("unsupported escaped value: %c", c) } i++ cursor = i @@ -1089,11 +1091,11 @@ func (d *jsonDecDriver) DecodeNaked() { default: // number bs := d.decNumBytes() if len(bs) == 0 { - d.d.errorf("json: decode number from empty string") + d.d.errorf("decode number from empty string") return } if err := d.nakedNum(z, bs); err != nil { - d.d.errorf("json: decode number from %s: %v", bs, err) + d.d.errorf("decode number from %s: %v", bs, err) return } } diff --git a/codec/mammoth2_codecgen_generated_test.go b/codec/mammoth2_codecgen_generated_test.go index 424700d4..dbd1052d 100644 --- a/codec/mammoth2_codecgen_generated_test.go +++ b/codec/mammoth2_codecgen_generated_test.go @@ -20584,7 +20584,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym21 if false { } else { - *((*uint)(yyv20)) = uint(r.DecodeUint(codecSelferBitsize19781)) + *((*uint)(yyv20)) = uint(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } case "FptrUint": @@ -20603,7 +20603,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym23 if false { } else { - *((*uint)(x.FptrUint)) = uint(r.DecodeUint(codecSelferBitsize19781)) + *((*uint)(x.FptrUint)) = uint(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } case "FUint8": @@ -20615,7 +20615,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym25 if false { } else { - *((*uint8)(yyv24)) = uint8(r.DecodeUint(8)) + *((*uint8)(yyv24)) = uint8(z.c.UintV(r.DecodeUint64(), 8)) } } case "FptrUint8": @@ -20634,7 +20634,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym27 if false { } else { - *((*uint8)(x.FptrUint8)) = uint8(r.DecodeUint(8)) + *((*uint8)(x.FptrUint8)) = uint8(z.c.UintV(r.DecodeUint64(), 8)) } } case "FUint16": @@ -20646,7 +20646,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym29 if false { } else { - *((*uint16)(yyv28)) = uint16(r.DecodeUint(16)) + *((*uint16)(yyv28)) = uint16(z.c.UintV(r.DecodeUint64(), 16)) } } case "FptrUint16": @@ -20665,7 +20665,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym31 if false { } else { - *((*uint16)(x.FptrUint16)) = uint16(r.DecodeUint(16)) + *((*uint16)(x.FptrUint16)) = uint16(z.c.UintV(r.DecodeUint64(), 16)) } } case "FUint32": @@ -20677,7 +20677,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym33 if false { } else { - *((*uint32)(yyv32)) = uint32(r.DecodeUint(32)) + *((*uint32)(yyv32)) = uint32(z.c.UintV(r.DecodeUint64(), 32)) } } case "FptrUint32": @@ -20696,7 +20696,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym35 if false { } else { - *((*uint32)(x.FptrUint32)) = uint32(r.DecodeUint(32)) + *((*uint32)(x.FptrUint32)) = uint32(z.c.UintV(r.DecodeUint64(), 32)) } } case "FUint64": @@ -20708,7 +20708,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym37 if false { } else { - *((*uint64)(yyv36)) = uint64(r.DecodeUint(64)) + *((*uint64)(yyv36)) = uint64(r.DecodeUint64()) } } case "FptrUint64": @@ -20727,7 +20727,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym39 if false { } else { - *((*uint64)(x.FptrUint64)) = uint64(r.DecodeUint(64)) + *((*uint64)(x.FptrUint64)) = uint64(r.DecodeUint64()) } } case "FUintptr": @@ -20739,7 +20739,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym41 if false { } else { - *((*uintptr)(yyv40)) = uintptr(r.DecodeUint(codecSelferBitsize19781)) + *((*uintptr)(yyv40)) = uintptr(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } case "FptrUintptr": @@ -20758,7 +20758,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym43 if false { } else { - *((*uintptr)(x.FptrUintptr)) = uintptr(r.DecodeUint(codecSelferBitsize19781)) + *((*uintptr)(x.FptrUintptr)) = uintptr(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } case "FInt": @@ -20770,7 +20770,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym45 if false { } else { - *((*int)(yyv44)) = int(r.DecodeInt(codecSelferBitsize19781)) + *((*int)(yyv44)) = int(z.c.IntV(r.DecodeInt64(), codecSelferBitsize19781)) } } case "FptrInt": @@ -20789,7 +20789,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym47 if false { } else { - *((*int)(x.FptrInt)) = int(r.DecodeInt(codecSelferBitsize19781)) + *((*int)(x.FptrInt)) = int(z.c.IntV(r.DecodeInt64(), codecSelferBitsize19781)) } } case "FInt8": @@ -20801,7 +20801,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym49 if false { } else { - *((*int8)(yyv48)) = int8(r.DecodeInt(8)) + *((*int8)(yyv48)) = int8(z.c.IntV(r.DecodeInt64(), 8)) } } case "FptrInt8": @@ -20820,7 +20820,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym51 if false { } else { - *((*int8)(x.FptrInt8)) = int8(r.DecodeInt(8)) + *((*int8)(x.FptrInt8)) = int8(z.c.IntV(r.DecodeInt64(), 8)) } } case "FInt16": @@ -20832,7 +20832,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym53 if false { } else { - *((*int16)(yyv52)) = int16(r.DecodeInt(16)) + *((*int16)(yyv52)) = int16(z.c.IntV(r.DecodeInt64(), 16)) } } case "FptrInt16": @@ -20851,7 +20851,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym55 if false { } else { - *((*int16)(x.FptrInt16)) = int16(r.DecodeInt(16)) + *((*int16)(x.FptrInt16)) = int16(z.c.IntV(r.DecodeInt64(), 16)) } } case "FInt32": @@ -20863,7 +20863,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym57 if false { } else { - *((*int32)(yyv56)) = int32(r.DecodeInt(32)) + *((*int32)(yyv56)) = int32(z.c.IntV(r.DecodeInt64(), 32)) } } case "FptrInt32": @@ -20882,7 +20882,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym59 if false { } else { - *((*int32)(x.FptrInt32)) = int32(r.DecodeInt(32)) + *((*int32)(x.FptrInt32)) = int32(z.c.IntV(r.DecodeInt64(), 32)) } } case "FInt64": @@ -20894,7 +20894,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym61 if false { } else { - *((*int64)(yyv60)) = int64(r.DecodeInt(64)) + *((*int64)(yyv60)) = int64(r.DecodeInt64()) } } case "FptrInt64": @@ -20913,7 +20913,7 @@ func (x *TestMammoth2) codecDecodeSelfFromMap(l int, d *Decoder) { _ = yym63 if false { } else { - *((*int64)(x.FptrInt64)) = int64(r.DecodeInt(64)) + *((*int64)(x.FptrInt64)) = int64(r.DecodeInt64()) } } case "FBool": @@ -29616,7 +29616,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1174 if false { } else { - *((*uint)(yyv1173)) = uint(r.DecodeUint(codecSelferBitsize19781)) + *((*uint)(yyv1173)) = uint(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } if x.FptrUint == nil { @@ -29645,7 +29645,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1176 if false { } else { - *((*uint)(x.FptrUint)) = uint(r.DecodeUint(codecSelferBitsize19781)) + *((*uint)(x.FptrUint)) = uint(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } yyj1156++ @@ -29667,7 +29667,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1178 if false { } else { - *((*uint8)(yyv1177)) = uint8(r.DecodeUint(8)) + *((*uint8)(yyv1177)) = uint8(z.c.UintV(r.DecodeUint64(), 8)) } } if x.FptrUint8 == nil { @@ -29696,7 +29696,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1180 if false { } else { - *((*uint8)(x.FptrUint8)) = uint8(r.DecodeUint(8)) + *((*uint8)(x.FptrUint8)) = uint8(z.c.UintV(r.DecodeUint64(), 8)) } } yyj1156++ @@ -29718,7 +29718,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1182 if false { } else { - *((*uint16)(yyv1181)) = uint16(r.DecodeUint(16)) + *((*uint16)(yyv1181)) = uint16(z.c.UintV(r.DecodeUint64(), 16)) } } if x.FptrUint16 == nil { @@ -29747,7 +29747,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1184 if false { } else { - *((*uint16)(x.FptrUint16)) = uint16(r.DecodeUint(16)) + *((*uint16)(x.FptrUint16)) = uint16(z.c.UintV(r.DecodeUint64(), 16)) } } yyj1156++ @@ -29769,7 +29769,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1186 if false { } else { - *((*uint32)(yyv1185)) = uint32(r.DecodeUint(32)) + *((*uint32)(yyv1185)) = uint32(z.c.UintV(r.DecodeUint64(), 32)) } } if x.FptrUint32 == nil { @@ -29798,7 +29798,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1188 if false { } else { - *((*uint32)(x.FptrUint32)) = uint32(r.DecodeUint(32)) + *((*uint32)(x.FptrUint32)) = uint32(z.c.UintV(r.DecodeUint64(), 32)) } } yyj1156++ @@ -29820,7 +29820,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1190 if false { } else { - *((*uint64)(yyv1189)) = uint64(r.DecodeUint(64)) + *((*uint64)(yyv1189)) = uint64(r.DecodeUint64()) } } if x.FptrUint64 == nil { @@ -29849,7 +29849,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1192 if false { } else { - *((*uint64)(x.FptrUint64)) = uint64(r.DecodeUint(64)) + *((*uint64)(x.FptrUint64)) = uint64(r.DecodeUint64()) } } yyj1156++ @@ -29871,7 +29871,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1194 if false { } else { - *((*uintptr)(yyv1193)) = uintptr(r.DecodeUint(codecSelferBitsize19781)) + *((*uintptr)(yyv1193)) = uintptr(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } if x.FptrUintptr == nil { @@ -29900,7 +29900,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1196 if false { } else { - *((*uintptr)(x.FptrUintptr)) = uintptr(r.DecodeUint(codecSelferBitsize19781)) + *((*uintptr)(x.FptrUintptr)) = uintptr(z.c.UintV(r.DecodeUint64(), codecSelferBitsize19781)) } } yyj1156++ @@ -29922,7 +29922,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1198 if false { } else { - *((*int)(yyv1197)) = int(r.DecodeInt(codecSelferBitsize19781)) + *((*int)(yyv1197)) = int(z.c.IntV(r.DecodeInt64(), codecSelferBitsize19781)) } } if x.FptrInt == nil { @@ -29951,7 +29951,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1200 if false { } else { - *((*int)(x.FptrInt)) = int(r.DecodeInt(codecSelferBitsize19781)) + *((*int)(x.FptrInt)) = int(z.c.IntV(r.DecodeInt64(), codecSelferBitsize19781)) } } yyj1156++ @@ -29973,7 +29973,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1202 if false { } else { - *((*int8)(yyv1201)) = int8(r.DecodeInt(8)) + *((*int8)(yyv1201)) = int8(z.c.IntV(r.DecodeInt64(), 8)) } } if x.FptrInt8 == nil { @@ -30002,7 +30002,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1204 if false { } else { - *((*int8)(x.FptrInt8)) = int8(r.DecodeInt(8)) + *((*int8)(x.FptrInt8)) = int8(z.c.IntV(r.DecodeInt64(), 8)) } } yyj1156++ @@ -30024,7 +30024,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1206 if false { } else { - *((*int16)(yyv1205)) = int16(r.DecodeInt(16)) + *((*int16)(yyv1205)) = int16(z.c.IntV(r.DecodeInt64(), 16)) } } if x.FptrInt16 == nil { @@ -30053,7 +30053,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1208 if false { } else { - *((*int16)(x.FptrInt16)) = int16(r.DecodeInt(16)) + *((*int16)(x.FptrInt16)) = int16(z.c.IntV(r.DecodeInt64(), 16)) } } yyj1156++ @@ -30075,7 +30075,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1210 if false { } else { - *((*int32)(yyv1209)) = int32(r.DecodeInt(32)) + *((*int32)(yyv1209)) = int32(z.c.IntV(r.DecodeInt64(), 32)) } } if x.FptrInt32 == nil { @@ -30104,7 +30104,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1212 if false { } else { - *((*int32)(x.FptrInt32)) = int32(r.DecodeInt(32)) + *((*int32)(x.FptrInt32)) = int32(z.c.IntV(r.DecodeInt64(), 32)) } } yyj1156++ @@ -30126,7 +30126,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1214 if false { } else { - *((*int64)(yyv1213)) = int64(r.DecodeInt(64)) + *((*int64)(yyv1213)) = int64(r.DecodeInt64()) } } if x.FptrInt64 == nil { @@ -30155,7 +30155,7 @@ func (x *TestMammoth2) codecDecodeSelfFromArray(l int, d *Decoder) { _ = yym1216 if false { } else { - *((*int64)(x.FptrInt64)) = int64(r.DecodeInt(64)) + *((*int64)(x.FptrInt64)) = int64(r.DecodeInt64()) } } yyj1156++ @@ -44125,7 +44125,7 @@ func (x *testMammoth2Binary) CodecDecodeSelf(d *Decoder) { } else if yym1 { z.DecBinaryUnmarshal(x) } else { - *((*uint64)(x)) = uint64(r.DecodeUint(64)) + *((*uint64)(x)) = uint64(r.DecodeUint64()) } } @@ -44157,7 +44157,7 @@ func (x *testMammoth2Text) CodecDecodeSelf(d *Decoder) { } else if !yym1 { z.DecTextUnmarshal(x) } else { - *((*uint64)(x)) = uint64(r.DecodeUint(64)) + *((*uint64)(x)) = uint64(r.DecodeUint64()) } } @@ -44189,7 +44189,7 @@ func (x *testMammoth2Json) CodecDecodeSelf(d *Decoder) { } else if !yym1 && z.IsJSONHandle() { z.DecJSONUnmarshal(x) } else { - *((*uint64)(x)) = uint64(r.DecodeUint(64)) + *((*uint64)(x)) = uint64(r.DecodeUint64()) } } @@ -44738,7 +44738,7 @@ func (x codecSelfer19781) dectestMammoth2Basic(v *testMammoth2Basic, d *Decoder) _ = yym3 if false { } else { - *((*uint64)(yyv2)) = uint64(r.DecodeUint(64)) + *((*uint64)(yyv2)) = uint64(r.DecodeUint64()) } } @@ -44979,7 +44979,7 @@ func (x codecSelfer19781) decArray4int64(v *[4]int64, d *Decoder) { _ = yym3 if false { } else { - *((*int64)(yyv2)) = int64(r.DecodeInt(64)) + *((*int64)(yyv2)) = int64(r.DecodeInt64()) } } diff --git a/codec/msgpack.go b/codec/msgpack.go index 4c0d8062..b5328391 100644 --- a/codec/msgpack.go +++ b/codec/msgpack.go @@ -291,9 +291,9 @@ func (e *msgpackEncDriver) EncodeString(c charEncoding, s string) { } } -func (e *msgpackEncDriver) EncodeSymbol(v string) { - e.EncodeString(cUTF8, v) -} +// func (e *msgpackEncDriver) EncodeSymbol(v string) { +// e.EncodeString(cUTF8, v) +// } func (e *msgpackEncDriver) EncodeStringBytes(c charEncoding, bs []byte) { if bs == nil { @@ -450,7 +450,7 @@ func (d *msgpackDecDriver) DecodeNaked() { } // int can be decoded from msgpack type: intXXX or uintXXX -func (d *msgpackDecDriver) DecodeInt(bitsize uint8) (i int64) { +func (d *msgpackDecDriver) DecodeInt64() (i int64) { if !d.bdRead { d.readNextBd() } @@ -482,19 +482,12 @@ func (d *msgpackDecDriver) DecodeInt(bitsize uint8) (i int64) { return } } - // check overflow (logic adapted from std pkg reflect/value.go OverflowUint() - if bitsize > 0 { - if trunc := (i << (64 - bitsize)) >> (64 - bitsize); i != trunc { - d.d.errorf("Overflow int value: %v", i) - return - } - } d.bdRead = false return } // uint can be decoded from msgpack type: intXXX or uintXXX -func (d *msgpackDecDriver) DecodeUint(bitsize uint8) (ui uint64) { +func (d *msgpackDecDriver) DecodeUint64() (ui uint64) { if !d.bdRead { d.readNextBd() } @@ -547,13 +540,6 @@ func (d *msgpackDecDriver) DecodeUint(bitsize uint8) (ui uint64) { return } } - // check overflow (logic adapted from std pkg reflect/value.go OverflowUint() - if bitsize > 0 { - if trunc := (ui << (64 - bitsize)) >> (64 - bitsize); ui != trunc { - d.d.errorf("Overflow uint value: %v", ui) - return - } - } d.bdRead = false return } @@ -568,7 +554,7 @@ func (d *msgpackDecDriver) DecodeFloat64() (f float64) { } else if d.bd == mpDouble { f = math.Float64frombits(bigen.Uint64(d.r.readx(8))) } else { - f = float64(d.DecodeInt(0)) + f = float64(d.DecodeInt64()) } d.bdRead = false return diff --git a/codec/noop.go b/codec/noop.go index c658a97d..241ad956 100644 --- a/codec/noop.go +++ b/codec/noop.go @@ -91,8 +91,9 @@ func (h *noopDrv) EncodeArrayStart(length int) { h.start(true) } func (h *noopDrv) EncodeMapStart(length int) { h.start(false) } func (h *noopDrv) EncodeEnd() { h.end() } -func (h *noopDrv) EncodeString(c charEncoding, v string) {} -func (h *noopDrv) EncodeSymbol(v string) {} +func (h *noopDrv) EncodeString(c charEncoding, v string) {} + +// func (h *noopDrv) EncodeSymbol(v string) {} func (h *noopDrv) EncodeStringBytes(c charEncoding, v []byte) {} func (h *noopDrv) EncodeExt(rv interface{}, xtag uint64, ext Ext, e *Encoder) {} diff --git a/codec/simple.go b/codec/simple.go index 1cc24e3d..e0ed475e 100644 --- a/codec/simple.go +++ b/codec/simple.go @@ -33,13 +33,14 @@ const ( type simpleEncDriver struct { noBuiltInTypes - encDriverNoopContainerWriter // encNoSeparator e *Encoder h *SimpleHandle w encWriter b [8]byte - c containerState + // c containerState + encDriverTrackContainerWriter + // encDriverNoopContainerWriter } func (e *simpleEncDriver) EncodeNil() { @@ -150,31 +151,11 @@ func (e *simpleEncDriver) WriteArrayStart(length int) { e.encLen(simpleVdArray, length) } -func (e *simpleEncDriver) WriteArrayElem() { - e.c = containerArrayElem -} - -func (e *simpleEncDriver) WriteArrayEnd() { - e.c = containerArrayEnd -} - func (e *simpleEncDriver) WriteMapStart(length int) { e.c = containerMapStart e.encLen(simpleVdMap, length) } -func (e *simpleEncDriver) WriteMapElemKey() { - e.c = containerMapKey -} - -func (e *simpleEncDriver) WriteMapElemValue() { - e.c = containerMapValue -} - -func (e *simpleEncDriver) WriteMapEnd() { - e.c = containerMapEnd -} - func (e *simpleEncDriver) EncodeString(c charEncoding, v string) { if false && e.h.EncZeroValuesAsNil && e.c != containerMapKey && v == "" { e.EncodeNil() @@ -184,9 +165,9 @@ func (e *simpleEncDriver) EncodeString(c charEncoding, v string) { e.w.writestr(v) } -func (e *simpleEncDriver) EncodeSymbol(v string) { - e.EncodeString(cUTF8, v) -} +// func (e *simpleEncDriver) EncodeSymbol(v string) { +// e.EncodeString(cUTF8, v) +// } func (e *simpleEncDriver) EncodeStringBytes(c charEncoding, v []byte) { // if e.h.EncZeroValuesAsNil && e.c != containerMapKey && v == nil { @@ -314,34 +295,22 @@ func (d *simpleDecDriver) decCheckInteger() (ui uint64, neg bool) { return } -func (d *simpleDecDriver) DecodeInt(bitsize uint8) (i int64) { +func (d *simpleDecDriver) DecodeInt64() (i int64) { ui, neg := d.decCheckInteger() - i, overflow := chkOvf.SignedInt(ui) - if overflow { - d.d.errorf("simple: overflow converting %v to signed integer", ui) - return - } + i = chkOvf.SignedIntV(ui) if neg { i = -i } - if chkOvf.Int(i, bitsize) { - d.d.errorf("simple: overflow integer: %v", i) - return - } d.bdRead = false return } -func (d *simpleDecDriver) DecodeUint(bitsize uint8) (ui uint64) { +func (d *simpleDecDriver) DecodeUint64() (ui uint64) { ui, neg := d.decCheckInteger() if neg { d.d.errorf("Assigning negative signed value to unsigned type") return } - if chkOvf.Uint(ui, bitsize) { - d.d.errorf("simple: overflow integer: %v", ui) - return - } d.bdRead = false return } @@ -356,7 +325,7 @@ func (d *simpleDecDriver) DecodeFloat64() (f float64) { f = math.Float64frombits(bigen.Uint64(d.r.readx(8))) } else { if d.bd >= simpleVdPosInt && d.bd <= simpleVdNegInt+3 { - f = float64(d.DecodeInt(64)) + f = float64(d.DecodeInt64()) } else { d.d.errorf("Float only valid from float32/64: Invalid descriptor: %v", d.bd) return @@ -431,14 +400,14 @@ func (d *simpleDecDriver) decLen() int { case 3: ui := uint64(bigen.Uint32(d.r.readx(4))) if chkOvf.Uint(ui, intBitsize) { - d.d.errorf("simple: overflow integer: %v", ui) + d.d.errorf("overflow integer: %v", ui) return 0 } return int(ui) case 4: ui := bigen.Uint64(d.r.readx(8)) if chkOvf.Uint(ui, intBitsize) { - d.d.errorf("simple: overflow integer: %v", ui) + d.d.errorf("overflow integer: %v", ui) return 0 } return int(ui) @@ -562,14 +531,14 @@ func (d *simpleDecDriver) DecodeNaked() { case simpleVdPosInt, simpleVdPosInt + 1, simpleVdPosInt + 2, simpleVdPosInt + 3: if d.h.SignedInteger { n.v = valueTypeInt - n.i = d.DecodeInt(64) + n.i = d.DecodeInt64() } else { n.v = valueTypeUint - n.u = d.DecodeUint(64) + n.u = d.DecodeUint64() } case simpleVdNegInt, simpleVdNegInt + 1, simpleVdNegInt + 2, simpleVdNegInt + 3: n.v = valueTypeInt - n.i = d.DecodeInt(64) + n.i = d.DecodeInt64() case simpleVdFloat32: n.v = valueTypeFloat n.f = d.DecodeFloat64() diff --git a/codec/z_all_test.go b/codec/z_all_test.go index 870ac43a..b03ab3c4 100644 --- a/codec/z_all_test.go +++ b/codec/z_all_test.go @@ -81,7 +81,7 @@ func testSuite(t *testing.T, f func(t *testing.T)) { t.Run("optionsTrue-deepstruct", f) testDepth = 0 - testEncodeOptions.AsSymbols = AsSymbolAll + // testEncodeOptions.AsSymbols = AsSymbolAll testUseIoWrapper = true testReinit() t.Run("optionsTrue-ioWrapper", f) @@ -408,17 +408,17 @@ func TestCodecSuite(t *testing.T) { t.Run("cbor-rfc3339", testCborGroup) testCborH.TimeRFC3339 = oldTimeRFC3339 - oldSymbols := testBincH.getBasicHandle().AsSymbols + oldSymbols := testBincH.AsSymbols - testBincH.getBasicHandle().AsSymbols = AsSymbolNone + testBincH.AsSymbols = 2 // AsSymbolNone testReinit() t.Run("binc-no-symbols", testBincGroup) - testBincH.getBasicHandle().AsSymbols = AsSymbolAll + testBincH.AsSymbols = 1 // AsSymbolAll testReinit() t.Run("binc-all-symbols", testBincGroup) - testBincH.getBasicHandle().AsSymbols = oldSymbols + testBincH.AsSymbols = oldSymbols oldWriteExt := testMsgpackH.WriteExt oldNoFixedNum := testMsgpackH.NoFixedNum