Browse Source

codec: regenerate fast-path.generated.go

Do not use commaOK type assertion, as there is no performance advantage to it.
Ugorji Nwoke 7 years ago
parent
commit
d75b2dcb6b
2 changed files with 116 additions and 212 deletions
  1. 6 8
      codec/encode.go
  2. 110 204
      codec/fast-path.generated.go

+ 6 - 8
codec/encode.go

@@ -532,9 +532,8 @@ func (e *Encoder) kSlice(f *codecFnInfo, rv reflect.Value) {
 	}
 
 	// if chan, consume chan into a slice, and work off that slice.
-	var rvcs reflect.Value
 	if f.seq == seqTypeChan {
-		rvcs = reflect.Zero(reflect.SliceOf(rtelem))
+		rvcs := reflect.Zero(reflect.SliceOf(rtelem))
 		timeout := e.h.ChanRecvTimeout
 		if timeout < 0 { // consume until close
 			for {
@@ -611,18 +610,18 @@ func (e *Encoder) kSlice(f *codecFnInfo, rv reflect.Value) {
 
 func (e *Encoder) kStructNoOmitempty(f *codecFnInfo, rv reflect.Value) {
 	fti := f.ti
-	elemsep := e.esep
 	tisfi := fti.sfiSrc
 	toMap := !(fti.toArray || e.h.StructToArray)
 	if toMap {
 		tisfi = fti.sfiSort
 	}
+
 	ee := e.e
 
 	sfn := structFieldNode{v: rv, update: false}
 	if toMap {
 		ee.WriteMapStart(len(tisfi))
-		if elemsep {
+		if e.esep {
 			for _, si := range tisfi {
 				ee.WriteMapElemKey()
 				// ee.EncodeStringEnc(cUTF8, si.encName)
@@ -640,7 +639,7 @@ func (e *Encoder) kStructNoOmitempty(f *codecFnInfo, rv reflect.Value) {
 		ee.WriteMapEnd()
 	} else {
 		ee.WriteArrayStart(len(tisfi))
-		if elemsep {
+		if e.esep {
 			for _, si := range tisfi {
 				ee.WriteArrayElem()
 				e.encodeValue(sfn.field(si), nil, true)
@@ -857,7 +856,6 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) {
 
 	l := rv.Len()
 	ee.WriteMapStart(l)
-	elemsep := e.esep
 	if l == 0 {
 		ee.WriteMapEnd()
 		return
@@ -904,7 +902,7 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) {
 
 	// for j, lmks := 0, len(mks); j < lmks; j++ {
 	for j := range mks {
-		if elemsep {
+		if e.esep {
 			ee.WriteMapElemKey()
 		}
 		if keyTypeIsString {
@@ -912,7 +910,7 @@ func (e *Encoder) kMap(f *codecFnInfo, rv reflect.Value) {
 		} else {
 			e.encodeValue(mks[j], keyFn, true)
 		}
-		if elemsep {
+		if e.esep {
 			ee.WriteMapElemValue()
 		}
 		e.encodeValue(rv.MapIndex(mks[j]), valFn, true)

File diff suppressed because it is too large
+ 110 - 204
codec/fast-path.generated.go


Some files were not shown because too many files changed in this diff