OptionalnameAttribute name, or an array member's key; absent on a positional.
OptionalparentIndex, in this same list, of the array literal this member belongs to.
An index rather than a nested list because the list stays ONE ordered sequence of located values — the phase-0 normal form — and because a consumer that only wants spans should not have to walk a tree. Members follow their container immediately, so a parent index is always smaller.
True only when one quoted run encloses the whole scalar value.
OptionalsourcePresent only when the SOURCE proves the type, rather than scalar decoding.
array is proved by the delimiters. The other two are proved by an =
that does not bind a key (#258): with an empty right side the device drops
the sign and keeps the name as a str, and with a left side that is not a
name the sign COMPARES, which returns bool whatever the operands hold.
None of the three survives valueShapeHints, which reads a decoded
scalar and cannot see the sign.
The whole argument token, or the whole member run including its key.
Decoded scalar value, or exact source spelling when sourceShape is set.
str is the exception in both directions: the leftover of a {a=} member
is the DECODED name ({"a b"=} carries a b), because the bytes that
spell it are the key's, not a value's.
The literal's source bytes, quotes included.
One safely located value shape, before any later unreadable token.