Home | History | Annotate | Download | only in lib

Lines Matching refs:bin_tree_t

38 static reg_errcode_t preorder (bin_tree_t *root,
39 reg_errcode_t (fn (void *, bin_tree_t *)),
41 static reg_errcode_t postorder (bin_tree_t *root,
42 reg_errcode_t (fn (void *, bin_tree_t *)),
44 static reg_errcode_t optimize_subexps (void *extra, bin_tree_t *node);
45 static reg_errcode_t lower_subexps (void *extra, bin_tree_t *node);
46 static bin_tree_t *lower_subexp (reg_errcode_t *err, regex_t *preg,
47 bin_tree_t *node);
48 static reg_errcode_t calc_first (void *extra, bin_tree_t *node);
49 static reg_errcode_t calc_next (void *extra, bin_tree_t *node);
50 static reg_errcode_t link_nfa_nodes (void *extra, bin_tree_t *node);
62 static bin_tree_t *parse (re_string_t *regexp, regex_t *preg,
64 static bin_tree_t *parse_reg_exp (re_string_t *regexp, regex_t *preg,
67 static bin_tree_t *parse_branch (re_string_t *regexp, regex_t *preg,
70 static bin_tree_t *parse_expression (re_string_t *regexp, regex_t *preg,
73 static bin_tree_t *parse_sub_exp (re_string_t *regexp, regex_t *preg,
76 static bin_tree_t *parse_dup_op (bin_tree_t *dup_elem, re_string_t *regexp,
79 static bin_tree_t *parse_bracket_exp (re_string_t *regexp, re_dfa_t *dfa,
110 static bin_tree_t *build_charclass_op (re_dfa_t *dfa,
115 static bin_tree_t *create_tree (re_dfa_t *dfa,
116 bin_tree_t *left, bin_tree_t *right,
118 static bin_tree_t *create_token_tree (re_dfa_t *dfa,
119 bin_tree_t *left, bin_tree_t *right,
121 static bin_tree_t *duplicate_tree (const bin_tree_t *src, re_dfa_t *dfa);
123 static reg_errcode_t free_tree (void *extra, bin_tree_t *node);
124 static reg_errcode_t mark_opt_subexp (void *extra, bin_tree_t *node);
1166 postorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)),
1169 bin_tree_t *node, *prev;
1198 preorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)),
1201 bin_tree_t *node;
1214 bin_tree_t *prev = NULL;
1231 optimize_subexps (void *extra, bin_tree_t *node)
1262 lower_subexps (void *extra, bin_tree_t *node)
1283 static bin_tree_t *
1284 lower_subexp (reg_errcode_t *err, regex_t *preg, bin_tree_t *node)
1287 bin_tree_t *body = node->left;
1288 bin_tree_t *op, *cls, *tree1, *tree;
1320 calc_first (void *extra, bin_tree_t *node)
1340 calc_next (void *extra, bin_tree_t *node)
1363 link_nfa_nodes (void *extra, bin_tree_t *node)
1489 destinations. In the bin_tree_t and DFA, that's '|' and '*'. */
2068 static bin_tree_t *
2073 bin_tree_t *tree, *eor, *root;
2102 static bin_tree_t *
2107 bin_tree_t *tree, *branch = NULL;
2143 static bin_tree_t *
2147 bin_tree_t *tree, *exp;
2183 static bin_tree_t *
2188 bin_tree_t *tree;
2204 bin_tree_t *mbc_remain;
2294 bin_tree_t *tree_first, *tree_last;
2399 static bin_tree_t *
2404 bin_tree_t *tree;
2437 static bin_tree_t *
2438 parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa,
2441 bin_tree_t *tree = NULL, *old_tree = NULL;
2716 static bin_tree_t *
2976 bin_tree_t *work_tree;
3197 bin_tree_t *mbc_tree;
3508 static bin_tree_t *
3521 bin_tree_t *tree;
3589 bin_tree_t *mbc_tree;
3669 static bin_tree_t *
3670 create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right,
3678 static bin_tree_t *
3679 create_token_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right,
3682 bin_tree_t *tree;
3716 mark_opt_subexp (void *extra, bin_tree_t *node)
3743 free_tree (void *extra, bin_tree_t *node)
3755 static bin_tree_t *
3756 duplicate_tree (const bin_tree_t *root, re_dfa_t *dfa)
3758 const bin_tree_t *node;
3759 bin_tree_t *dup_root;
3760 bin_tree_t **p_new = &dup_root, *dup_node = root->parent;
3780 const bin_tree_t *prev = NULL;