Lines Matching refs:nodes
154 const re_node_set *nodes)
164 static Idx find_subexp_node (const re_dfa_t *dfa, const re_node_set *nodes,
692 if (dfa->init_state->nodes.nelem == 0 in re_search_internal()
693 && dfa->init_state_word->nodes.nelem == 0 in re_search_internal()
694 && (dfa->init_state_nl->nodes.nelem == 0 in re_search_internal()
1146 err = check_subexp_matching_top (mctx, &cur_state->nodes, 0); in check_matching()
1152 err = transit_state_bkref (mctx, &cur_state->nodes); in check_matching()
1250 re_token_type_t type = dfa->nodes[node].type; in check_halt_node_context()
1251 unsigned int constraint = dfa->nodes[node].constraint; in check_halt_node_context()
1276 for (i = 0; i < state->nodes.nelem; ++i) in check_halt_state_context()
1277 if (check_halt_node_context (mctx->dfa, state->nodes.elems[i], context)) in check_halt_state_context()
1278 return state->nodes.elems[i]; in check_halt_state_context()
1296 if (IS_EPSILON_NODE (dfa->nodes[node].type)) in proceed_next_node()
1298 re_node_set *cur_nodes = &mctx->state_log[*pidx]->nodes; in proceed_next_node()
1336 re_token_type_t type = dfa->nodes[node].type; in proceed_next_node()
1339 if (dfa->nodes[node].accept_mb) in proceed_next_node()
1345 Idx subexp_idx = dfa->nodes[node].opr.idx + 1; in proceed_next_node()
1367 if (re_node_set_contains (&mctx->state_log[*pidx]->nodes, in proceed_next_node()
1374 || check_node_accept (mctx, dfa->nodes + node, *pidx)) in proceed_next_node()
1379 || !re_node_set_contains (&mctx->state_log[*pidx]->nodes, in proceed_next_node()
1565 int type = dfa->nodes[cur_node].type; in update_regs()
1568 Idx reg_num = dfa->nodes[cur_node].opr.idx + 1; in update_regs()
1579 Idx reg_num = dfa->nodes[cur_node].opr.idx + 1; in update_regs()
1592 if (dfa->nodes[cur_node].opt_subexp in update_regs()
1630 ((state) != NULL && re_node_set_contains (&(state)->nodes, node))
1713 re_token_type_t type = dfa->nodes[prev_node].type; in build_sifted_states()
1718 if (dfa->nodes[prev_node].accept_mb) in build_sifted_states()
1726 && check_node_accept (mctx, dfa->nodes + prev_node, str_idx) in build_sifted_states()
1791 err = re_node_set_init_union (&merged_set, &dst[st_idx]->nodes, in merge_state_array()
1792 &src[st_idx]->nodes); in merge_state_array()
1814 : &mctx->state_log[str_idx]->nodes); in update_cur_sifted_state()
1892 if (IS_EPSILON_NODE (dfa->nodes[cur_node].type)) in sub_epsilon_src_nodes()
1941 subexp_idx = dfa->nodes[ent->node].opr.idx; in check_dst_limits()
1976 switch (dfa->nodes[node].type) in check_dst_limits_calc_pos_1()
2027 if ((boundaries & 1) && subexp_idx == dfa->nodes[node].opr.idx) in check_dst_limits_calc_pos_1()
2032 if ((boundaries & 2) && subexp_idx == dfa->nodes[node].opr.idx) in check_dst_limits_calc_pos_1()
2092 subexp_idx = dfa->nodes[ent->node].opr.idx; in check_subexp_limits()
2100 re_token_type_t type = dfa->nodes[node].type; in check_subexp_limits()
2102 && subexp_idx == dfa->nodes[node].opr.idx) in check_subexp_limits()
2105 && subexp_idx == dfa->nodes[node].opr.idx) in check_subexp_limits()
2144 re_token_type_t type = dfa->nodes[node].type; in check_subexp_limits()
2147 if (subexp_idx != dfa->nodes[node].opr.idx) in check_subexp_limits()
2184 type = dfa->nodes[node].type; in sift_states_bkref()
2408 *err = check_subexp_matching_top (mctx, &next_state->nodes, in merge_state_with_log()
2416 *err = transit_state_bkref (mctx, &next_state->nodes); in merge_state_with_log()
2477 if (dfa->nodes[node].type == OP_OPEN_SUBEXP in check_subexp_matching_top()
2478 && dfa->nodes[node].opr.idx < BITSET_WORD_BITS in check_subexp_matching_top()
2480 & ((bitset_word_t) 1 << dfa->nodes[node].opr.idx))) in check_subexp_matching_top()
2504 *err = re_node_set_alloc (&next_nodes, state->nodes.nelem + 1);
2507 for (node_cnt = 0; node_cnt < state->nodes.nelem; ++node_cnt)
2509 Idx cur_node = state->nodes.elems[node_cnt];
2510 if (check_node_accept (mctx, dfa->nodes + cur_node, cur_str_idx))
2541 for (i = 0; i < pstate->nodes.nelem; ++i) in transit_state_mb()
2544 Idx cur_node_idx = pstate->nodes.elems[i]; in transit_state_mb()
2550 if (!dfa->nodes[cur_node_idx].accept_mb) in transit_state_mb()
2553 if (dfa->nodes[cur_node_idx].constraint) in transit_state_mb()
2558 if (NOT_SATISFY_NEXT_CONSTRAINT (dfa->nodes[cur_node_idx].constraint, in transit_state_mb()
2606 transit_state_bkref (re_match_context_t *mctx, const re_node_set *nodes) in transit_state_bkref() argument
2613 for (i = 0; i < nodes->nelem; ++i) in transit_state_bkref()
2616 Idx node_idx = nodes->elems[i]; in transit_state_bkref()
2618 const re_token_t *node = dfa->nodes + node_idx; in transit_state_bkref()
2663 : mctx->state_log[cur_str_idx]->nodes.nelem); in transit_state_bkref()
2695 && mctx->state_log[cur_str_idx]->nodes.nelem > prev_nelem) in transit_state_bkref()
2737 subexp_num = dfa->nodes[bkref_node].opr.idx; in get_subexp()
2747 if (dfa->nodes[sub_top->node].opr.idx != subexp_num) in get_subexp()
2804 const re_node_set *nodes; in get_subexp() local
2829 nodes = &mctx->state_log[sl_str]->nodes; in get_subexp()
2830 cls_node = find_subexp_node (dfa, nodes, subexp_num, in get_subexp()
2899 find_subexp_node (const re_dfa_t *dfa, const re_node_set *nodes, in find_subexp_node() argument
2903 for (cls_idx = 0; cls_idx < nodes->nelem; ++cls_idx) in find_subexp_node()
2905 Idx cls_node = nodes->elems[cls_idx]; in find_subexp_node()
2906 const re_token_t *node = dfa->nodes + cls_node; in find_subexp_node()
2932 subexp_num = dfa->nodes[top_node].opr.idx; in check_arrival()
2978 err = re_node_set_init_copy (&next_nodes, &cur_state->nodes); in check_arrival()
3012 &mctx->state_log[str_idx + 1]->nodes); in check_arrival()
3059 : &mctx->state_log[last_str]->nodes); in check_arrival()
3099 re_token_type_t type = dfa->nodes[cur_node].type; in check_arrival_add_next_nodes()
3104 if (dfa->nodes[cur_node].accept_mb) in check_arrival_add_next_nodes()
3117 err = re_node_set_merge (&union_set, &dest_state->nodes); in check_arrival_add_next_nodes()
3142 || check_node_accept (mctx, dfa->nodes + cur_node, str_idx)) in check_arrival_add_next_nodes()
3225 if (dfa->nodes[cur_node].type == type in check_arrival_expand_ecl_sub()
3226 && dfa->nodes[cur_node].opr.idx == ex_subexp) in check_arrival_expand_ecl_sub()
3316 if (re_node_set_contains (&mctx->state_log[to_idx]->nodes, in expand_bkref_cache()
3320 &mctx->state_log[to_idx]->nodes); in expand_bkref_cache()
3594 const re_node_set *cur_nodes = &state->nodes; in group_nodes_into_DFAstates()
3601 re_token_t *node = &dfa->nodes[cur_nodes->elems[i]]; in group_nodes_into_DFAstates()
3782 const re_token_t *node = dfa->nodes + node_idx; in check_node_accept_bytes()