указан неизвестный тип, то такое поле следует просто пропустить. Но мой метод возвращает конкретно заполненную структуру со значениями, либо ошибку. Собственно, как мне лучше выразить, чтобы парсер знал, когда следует поле пропустить? Возвращать внутреннюю ошибку errIgnore, или в тип положить BandwidthTypeUnknown?
А чем тем не нравится type unknown? Кажется это семантически правильно — парсер конкретного типа не знает такого типа и возвращает ошибку об этом. При этом он ничего не знает о том как её обрабатывать, а общий парсер знает. А вот вынесение в метод — отдельная тема. Конечно выглядит кривовато ConnectionInfo{}.Parse(value)
про вынесение в метод, можно вынести процесс парсинга в конструктор (что я тоже считаю не совсем правильным) но в целом, окей, пусть будет UnknownType
У меня так и сделано. Но у меня там идея что бывают вложенные рекурсивные зависимости и мне нужно знать когда остановиться, такая ошибка говорит что тип уже существует
у тебя тоже парсеры вхардкожены, или ты начал использовать парсер-комбинаторы?
я не знаю что ты имеешь ввиду
Обсуждают сегодня