Lines Matching refs:state
4 * High efficiency lexical state parser
305 struct state {
307 int state[PARALLEL];
313 struct state state[2000];
342 while (m < LWS_ARRAY_SIZE(state)) {
344 state[m].state[j] = 0xffff;
345 state[m].terminal = 0;
359 if (state[walk].state[code_bit(n, m)] != 0xffff) {
361 walk = state[walk].state[code_bit(n, m)];
367 state[walk].state[code_bit(n, m)] = next;
373 state[walk].terminal = n++;
374 state[walk].state[0] = 0; /* terminal marker */
379 state[n].bytepos = walk;
389 state[n].real_pos = pos;
391 if (state[n].state[0]) /* nonterminal */
406 saw = state[n].state[m];
414 state[n].real_pos, n);
426 if (state[saw].state[0] == 0) { /* points to terminal */
428 state[saw].terminal,
429 state[saw].terminal & 0xff);
430 terms[(state[n].real_pos + m) >> 3] |=
431 1 << ((state[n].real_pos + m) & 7);
437 j = (state[saw].real_pos - q) >> 1;
445 state[n].real_pos, state[saw].real_pos);
450 "/* (to 0x%04X state %3d) */,\n",
453 state[saw].real_pos, saw);
496 "\n/* state that points to "