-
Notifications
You must be signed in to change notification settings - Fork 41
Open
Description
The general idea
Something similar to go's json.Marshall() and json.Unmarshall(), which allow (mostly) automatic conversion to and from JSON.
Use cases
- Configuration objects (my use case). You have a model that is complex enough to require a number of input parameters, some of them nested. Maybe you started with a list, but it's getting hard to keep track of all necessary fields, so you move to a class. Would be extremely handy to be able to read/write configurations directly to/from files (JSON, YAML, TOML, etc.)
- Accepting structured data from a web API directly into a class.
- Many non-web systems produce structured data, and it would be very convenient to be able to ingest their data directly into a class.
Issues with this suggestion
- Seems like a minefield of edge cases
- Lots of hard choices on how opinionated should such a system should be:
- automatic type conversion, e.g. should it automatically convert a string to a date?
- nested cases, e.g. how do you manage an
Address
class inside aPerson
class. - case matching, e.g. called
address
in JSON, but your property/class name isAddress
Feel free to say "won't do" and close; I'm aware this is a big ask 😅.
amondal2, zsusswein, argxltuijnder, m-murphy, t-kalinowski and 1 more
Metadata
Metadata
Assignees
Labels
No labels