Как определить, действительно ли переменная, переданная в мой Func, тип, который я хочу?Определить, является ли var нестандартным Тип
У меня есть пользовательский тип
type Name string
и куча констант этого типа
const Fred Name = "fred"
и у меня есть FUNC, что мне нужно, чтобы запретить любой другой тип входа, кроме моего обычая Тип ex:
func MyFunc(name1 Name, name2 Name) (*Person, error) {
//bunch of stuff
}
как я проверяю внутри своей функции, что имя1 и имя2 не являются строками, переданными функции но исключительно сопзИте я уже определен в моем типе е:
p, err := MyFunc(Fred,Albert) //What i want
p, err := MyFunc("fred","albert") //What i dont want to happen
если не может ответить на мой вопрос, как я могу сделать, как Enum в Golang типа А это означает, что что-то и ограничить другие госзакупки использовать этот тип я определен
Наконец, это было правильное решение, все значения, которые мне нужны, должны быть константами, поэтому я применил последнюю из ваших рекомендаций, другие ответы не передали goLint и ни то, где определенно решалось как последнее из ваших предложений, thanks – Eefret