JsonArray¶
Immutable JSON array backed by a persistent vector.
Construction is via chained .push() calls, each returning a new array
with structural sharing:
Implements¶
- Stringable box
Constructors¶
create¶
new val create(
data': Vec[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] val = qualify)
: JsonArray val^
Parameters¶
- data': Vec[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] val = qualify
Returns¶
- JsonArray val^
Public Functions¶
apply¶
Look up a value by index. Raises if out of bounds.
fun box apply(
i: USize val)
: (JsonObject val | JsonArray val | String val |
I64 val | F64 val | Bool val |
None val) ?
Parameters¶
- i: USize val
Returns¶
size¶
Number of elements.
Returns¶
- USize val
update¶
Return a new array with element at index i replaced. Raises if out of bounds.
fun box update(
i: USize val,
value: (JsonObject val | JsonArray val | String val |
I64 val | F64 val | Bool val |
None val))
: JsonArray val ?
Parameters¶
- i: USize val
- value: (JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)
Returns¶
- JsonArray val ?
push¶
Return a new array with value appended.
fun box push(
value: (JsonObject val | JsonArray val | String val |
I64 val | F64 val | Bool val |
None val))
: JsonArray val
Parameters¶
Returns¶
- JsonArray val
pop¶
Return (new array without last element, removed element). Raises if empty.
fun box pop()
: (JsonArray val , (JsonObject val | JsonArray val | String val |
I64 val | F64 val | Bool val |
None val)) ?
Returns¶
- (JsonArray val , (JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)) ?
values¶
Iterate over values.
fun box values()
: VecValues[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] ref
Returns¶
- VecValues[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] ref
pairs¶
Iterate over (index, value) pairs.
fun box pairs()
: VecPairs[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] ref
Returns¶
- VecPairs[(JsonObject val | JsonArray val | String val | I64 val | F64 val | Bool val | None val)] ref
string¶
Compact JSON serialization.
Returns¶
- String iso^
pretty_string¶
Pretty-printed JSON serialization.
Parameters¶
- indent: String val = " "
Returns¶
- String iso^