MCPcopy
hub / github.com/tinylib/msgp / writeMap

Method writeMap

msgp/write.go:798–819  ·  view source on GitHub ↗
(v reflect.Value)

Source from the content-addressed store, hash-verified

796}
797
798func (mw *Writer) writeMap(v reflect.Value) (err error) {
799 if v.Type().Key().Kind() != reflect.String {
800 return errors.New("msgp: map keys must be strings")
801 }
802 ks := v.MapKeys()
803 err = mw.WriteMapHeader(uint32(len(ks)))
804 if err != nil {
805 return
806 }
807 for _, key := range ks {
808 val := v.MapIndex(key)
809 err = mw.WriteString(key.String())
810 if err != nil {
811 return
812 }
813 err = mw.WriteIntf(val.Interface())
814 if err != nil {
815 return
816 }
817 }
818 return
819}
820
821func (mw *Writer) writeSlice(v reflect.Value) (err error) {
822 // is []byte

Callers 1

WriteIntfMethod · 0.95

Calls 5

WriteMapHeaderMethod · 0.95
WriteStringMethod · 0.95
WriteIntfMethod · 0.95
TypeMethod · 0.80
StringMethod · 0.65

Tested by

no test coverage detected