- parse_jobject( jarray[n].v.pv, extract( json, &jtokens[i+n] ), "" ); // recurse acorss the string and build a new symtab
- osize = jtokens[i+n].end; // done with them, we need to skip them
- i++;
- while( i+n < njtokens-1 && jtokens[n+i].end < osize ) {
- i++;
+ parse_jobject( jarray[n].v.pv, extract( json, &jtokens[data_idx] ), "" ); // recurse across the object and build a new symtab
+ stop = jtokens[data_idx].end; // same as before, must manually calc step
+ if( DEBUG ) fprintf( stderr, "<DBUG> computing step over object elements start=%d stop=%d\n", data_idx+1, stop );
+ for( di = data_idx+1; di < njtokens-1 && jtokens[di].end < stop ; di++ ) {
+ step++;
+ if( DEBUG > 1 ) {
+ fprintf( stderr, "\tskip: [%d] object element start=%d end=%d (%s)\n",
+ di, jtokens[di].start, jtokens[di].end, extract( json, &jtokens[di]) );
+ }