(b []byte, m map[string]any, flags AppendFlags)
| 176 | return b, nil |
| 177 | } |
| 178 | func 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 | } |
| 208 | func AppendMapStringString(b []byte, m map[string]string, flags AppendFlags) (_ []byte, err error) { |
| 209 | b = AppendMapLen(b, len(m)) |
| 210 | if flags&SortedMapKeys == 0 { |
no test coverage detected
searching dependent graphs…