truckstop/config/state.go

28 lines
403 B
Go

package config
import (
"encoding/json"
"errors"
)
type State string
var States = map[int]State{
27006: "NC",
84058: "UT",
}
func (state *State) UnmarshalJSON(b []byte) error {
var s string
if err := json.Unmarshal(b, &s); err != nil {
return err
}
for k := range States {
if string(States[k]) == s {
*state = States[k]
return nil
}
}
return errors.New("unknown state " + s)
}