MCPcopy
hub / github.com/uptrace/uptrace / AppendMapStringInterface

Function AppendMapStringInterface

pkg/msgp/append.go:178–207  ·  view source on GitHub ↗
(b []byte, m map[string]any, flags AppendFlags)

Source from the content-addressed store, hash-verified

176 return b, nil
177}
178func AppendMapStringInterface(b []byte, m map[string]any, flags AppendFlags) (_ []byte, err error) {
179 if m == nil {
180 return AppendNil(b), nil
181 }
182 b = AppendMapLen(b, len(m))
183 if flags&SortedMapKeys == 0 {
184 for k, v := range m {
185 b = AppendString(b, k)
186 b, err = Append(b, v, flags)
187 if err != nil {
188 return b, err
189 }
190 }
191 return b, nil
192 }
193 s := getMapEntrySlice(len(m))
194 defer putMapEntrySlice(s)
195 for k, v := range m {
196 s.entries = append(s.entries, mapEntry{key: k, val: v})
197 }
198 slices.SortFunc(s.entries, func(a, b mapEntry) int { return strings.Compare(a.key, b.key) })
199 for _, entry := range s.entries {
200 b = AppendString(b, entry.key)
201 b, err = Append(b, entry.val, flags)
202 if err != nil {
203 return b, err
204 }
205 }
206 return b, nil
207}
208func AppendMapStringString(b []byte, m map[string]string, flags AppendFlags) (_ []byte, err error) {
209 b = AppendMapLen(b, len(m))
210 if flags&SortedMapKeys == 0 {

Callers 1

Calls 6

AppendNilFunction · 0.85
AppendMapLenFunction · 0.85
getMapEntrySliceFunction · 0.85
putMapEntrySliceFunction · 0.85
AppendStringFunction · 0.70
AppendFunction · 0.70

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…