We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 820ec30 commit d346ea6Copy full SHA for d346ea6
reflect.go
@@ -75,8 +75,12 @@ func (stream *Stream) WriteVal(val interface{}) {
75
stream.WriteNil()
76
return
77
}
78
- typ := reflect2.TypeOf(val)
79
- encoder := stream.cfg.EncoderOf(typ)
+ cacheKey := reflect2.RTypeOf(val)
+ encoder := stream.cfg.getEncoderFromCache(cacheKey)
80
+ if encoder == nil {
81
+ typ := reflect2.TypeOf(val)
82
+ encoder = stream.cfg.EncoderOf(typ)
83
+ }
84
encoder.Encode(reflect2.PtrOf(val), stream)
85
86
0 commit comments