Skip to content

Formateurs & Code

JSON vers Struct Elixir

Elixir structs with @enforce_keys and typespecs.

Runs in your browser

Note de la rédaction

Understanding · Structs, maps, and the @enforce_keys trick.

Ce chapitre approfondi n'est actuellement disponible qu'en anglais. L'outil de conversion ci-dessus fonctionne dans votre langue ; le long article explicatif n'a pas encore été traduit.

Questions fréquentes

Quick answers.

How are JSON types mapped to Elixir types?

Strings map to `String.t()`, numbers to `number()` or `float()`, booleans to `boolean()`, and nulls are handled as `nil`. Nested objects are converted into internal map definitions or separate struct placeholders.

Does this tool handle nested JSON objects?

Yes. It will generate typespecs for nested structures, though you may need to manually extract nested maps into their own named modules for better Elixir project organisation.

What is the purpose of @enforce_keys in the output?

The generator identifies keys present in your JSON and includes them in `@enforce_keys` to ensure the struct cannot be initialised without those specific attributes.

Is my data sent to a backend for processing?

No. All transformation from JSON to Elixir code happens locally within your browser using JavaScript. No data is transmitted over the network.

Les internautes recherchent aussi

Outils similaires

More in this room.

Tout voir dans Formateurs & Code