On Thursday, 30 October 2025 at 13:02:16 UTC, Hipreme wrote:
Redub uses a cache system in which the hash of an object
becomes a key. This does not translate well to structs as they
are "random" keys. (...)
So you have several use cases where the keys are not a small set
known ahead of time, but constructed dynamically. Makes sense,
though now I wonder why you would use JSON for your cache or
filesystem when performance is such a concern. Or when it's not a
concern, why std.json doesn't suffice.
There is another case in which the dynamic type API is kinda
important, which is mostly when you do union types, so one
would still need a good representation of it:
You could define:
```D
struct Input
{
string keyboard;
string gamepad;
string analog;
string axis;
}
```
And then check the length of those strings to see if they have a
value.
Either way, it's still useful to have a fast JSON parser using
dynamic objects, and using std.json's API makes it an easy
upgrade.