:title
Get or create a child

:sig
function get_or_create(value : dval, key : string, default : as dval) dval

:params
value : target value
key : child key
default : value to store when the child is missing

:returns
The target value.

:content
`get_or_create(value, key, default)` stores `default` when `key` is missing. It changes and returns `value`.

:example capy render
var config := dval({})
config = get_or_create(config, "host", "localhost")
print(config.host, "\n")

:see-group
dval-access
