gnØland
package users import "std" type AddressOrName string func (aon AddressOrName) IsName() bool { return aon != "" && aon[0] == '@' } func (aon AddressOrName) GetName() (string, bool) { if len(aon) >= 2 && aon[0] == '@' { return string(aon[1:]), true } return "", false } func (aon AddressOrName) Resolve() std.Address { name, isName := aon.GetName() if isName { user := GetUserByName(name) return user.address } else { return std.Address(aon) // TODO check validity } }