This commit is contained in:
2026-06-05 17:22:38 +02:00
parent cf9dbf26f3
commit 88623f55df
21 changed files with 2123 additions and 50 deletions
+23
View File
@@ -32,6 +32,29 @@ func EntityDXCC(name string) int {
return 0
}
// nameByDXCC reverses dxccByName (number → a representative entity name),
// built once. When several names share a number, the longest (usually the most
// complete) wins. Names are Title-cased for display.
var nameByDXCC = func() map[int]string {
m := make(map[int]string, len(dxccByName))
for name, num := range dxccByName {
if cur, ok := m[num]; !ok || len(name) > len(cur) {
m[num] = name
}
}
return m
}()
// NameForDXCC returns a display name for an ADIF DXCC entity number, or "" if
// unknown.
func NameForDXCC(n int) string {
name, ok := nameByDXCC[n]
if !ok {
return ""
}
return strings.Title(name) //nolint:staticcheck // ASCII entity names
}
// dxccByCanon is dxccByName re-keyed by the canonical entity form, built once.
var dxccByCanon = func() map[string]int {
m := make(map[string]int, len(dxccByName))