Отказ от ответственности: Я проверил вопрос here, и он не отвечает мне.Elixir - Вложенный анализ JSON для структур
Я пытаюсь придумать способ вложенного анализа синтаксиса JSON. Пример:
{"name": "blah blah", "address": {"street": "smthing"}}
Я хочу, чтобы достичь этого результата:
%User{name: "blah blah", address: %Address{street: "smthing"}}
Потому что тогда было бы легче подключить проверку (с использованием Vex для exapmle).
Я знаю, что Poison поддерживает опцию «as struct», но не обеспечивает вложенность. Выше будет обработан:
%User{name: "blah blah", address: %{"street" => "smthing"}}.
Я знаю, что я мог бы написать реализацию декодера для модуля User
, но я предполагаю, что это не предназначен случай использования, и это не будет универсальным.
Когда вы задавались вопросом о реализации, я не мог найти способ узнать, является ли атом модулем ... может быть, мне нужно пойти с :code.is_loaded(module_name)
?
В любом случае, прежде чем пытаться выполнить реализацию, я хотел бы знать, есть ли что-то, чего я не вижу.
Это отлично работает для меня с Poison 2.0. Благодаря @Maikon – q231950