JsonObject¶
Immutable JSON object backed by a persistent hash map.
Construction is via chained .update() calls, each returning a new object
with structural sharing:
Implements¶
- Stringable box
Constructors¶
create¶
Parameters¶
Returns¶
- JsonObject val^
Public Functions¶
apply¶
Look up a value by key. Raises if key is not present.
Parameters¶
- key: String val
Returns¶
get_or_else¶
Look up a value by key, returning default if absent.
Parameters¶
Returns¶
contains¶
Check whether a key is present.
Parameters¶
- key: String val
Returns¶
- Bool val
size¶
Number of key-value pairs.
Returns¶
- USize val
update¶
Return a new object with the key set to value.
Parameters¶
Returns¶
- JsonObject val
remove¶
Return a new object without the given key. No-op if key is absent.
Parameters¶
- key: String val
Returns¶
- JsonObject val
keys¶
Iterate over keys.
Returns¶
values¶
Iterate over values.
Returns¶
pairs¶
Iterate over (key, value) pairs.
Returns¶
string¶
Compact JSON serialization.
Returns¶
- String iso^
pretty_string¶
Pretty-printed JSON serialization.
Parameters¶
- indent: String val = " "
Returns¶
- String iso^