in src/main.ts [262:277]
function acceptReal(val:number) {
if (isNaN(val)) {
return fail('cannot parse float');
}
if (state === State.DICT_STATE) {
if (curKey === null) {
return fail('missing <key>');
}
cur[curKey] = val;
curKey = null;
} else if (state === State.ARR_STATE) {
cur.push(val);
} else { // ROOT_STATE
cur = val;
}
}