(m map[K]V)
| 359 | } |
| 360 | |
| 361 | func GetOrderedStringerMapKeys[K interface { |
| 362 | comparable |
| 363 | fmt.Stringer |
| 364 | }, V any](m map[K]V) []K { |
| 365 | keyStrMap := make(map[K]string) |
| 366 | keys := make([]K, 0, len(m)) |
| 367 | for key := range m { |
| 368 | keys = append(keys, key) |
| 369 | keyStrMap[key] = key.String() |
| 370 | } |
| 371 | sort.Slice(keys, func(i, j int) bool { |
| 372 | return keyStrMap[keys[i]] < keyStrMap[keys[j]] |
| 373 | }) |
| 374 | return keys |
| 375 | } |
| 376 | |
| 377 | func GetOrderedMapKeys[V any](m map[string]V) []string { |
| 378 | keys := make([]string, 0, len(m)) |