Only do init once for Armenian transliteration

This commit is contained in:
Elara 2021-10-06 13:08:25 -07:00
parent fe4b0ec203
commit a4598269e5

View File

@ -4,7 +4,9 @@ import (
"strings" "strings"
) )
type ArmenianTranslit struct{} type ArmenianTranslit struct {
initComplete bool
}
var armenianMap = []string{ var armenianMap = []string{
"աու", "au", "աու", "au",
@ -121,6 +123,7 @@ var armenianMap = []string{
} }
func (at *ArmenianTranslit) Init() { func (at *ArmenianTranslit) Init() {
if !at.initComplete {
lower := armenianMap lower := armenianMap
for i, val := range lower { for i, val := range lower {
if i%2 == 1 { if i%2 == 1 {
@ -131,6 +134,8 @@ func (at *ArmenianTranslit) Init() {
armenianMap = append(armenianMap, capital, strings.Title(armenianMap[i+1])) armenianMap = append(armenianMap, capital, strings.Title(armenianMap[i+1]))
} }
} }
at.initComplete = true
}
} }
func (at *ArmenianTranslit) Transliterate(s string) string { func (at *ArmenianTranslit) Transliterate(s string) string {