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);
1159 postorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)), in postorder() argument
1162 bin_tree_t *node, *prev; in postorder()
1191 preorder (bin_tree_t *root, reg_errcode_t (fn (void *, bin_tree_t *)), in preorder() argument
1194 bin_tree_t *node; in preorder()
1207 bin_tree_t *prev = NULL; in preorder()
1224 optimize_subexps (void *extra, bin_tree_t *node) in optimize_subexps()
1255 lower_subexps (void *extra, bin_tree_t *node) in lower_subexps()
1276 static bin_tree_t *
1277 lower_subexp (reg_errcode_t *err, regex_t *preg, bin_tree_t *node) in lower_subexp()
1280 bin_tree_t *body = node->left; in lower_subexp()
1281 bin_tree_t *op, *cls, *tree1, *tree; in lower_subexp()
1313 calc_first (void *extra, bin_tree_t *node) in calc_first()
1333 calc_next (void *extra, bin_tree_t *node) in calc_next()
1356 link_nfa_nodes (void *extra, bin_tree_t *node) in link_nfa_nodes()
2059 static bin_tree_t *
2064 bin_tree_t *tree, *eor, *root; in parse()
2093 static bin_tree_t *
2098 bin_tree_t *tree, *branch = NULL; in parse_reg_exp()
2134 static bin_tree_t *
2138 bin_tree_t *tree, *exp; in parse_branch()
2174 static bin_tree_t *
2179 bin_tree_t *tree; in parse_expression()
2195 bin_tree_t *mbc_remain; in parse_expression()
2285 bin_tree_t *tree_first, *tree_last; in parse_expression()
2390 static bin_tree_t *
2395 bin_tree_t *tree; in parse_sub_exp()
2428 static bin_tree_t *
2429 parse_dup_op (bin_tree_t *elem, re_string_t *regexp, re_dfa_t *dfa, in parse_dup_op()
2432 bin_tree_t *tree = NULL, *old_tree = NULL; in parse_dup_op()
2707 static bin_tree_t *
2967 bin_tree_t *work_tree; in parse_bracket_exp()
3188 bin_tree_t *mbc_tree; in parse_bracket_exp()
3499 static bin_tree_t *
3512 bin_tree_t *tree; in build_charclass_op()
3580 bin_tree_t *mbc_tree; in build_charclass_op()
3658 static bin_tree_t *
3659 create_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, in create_tree()
3667 static bin_tree_t *
3668 create_token_tree (re_dfa_t *dfa, bin_tree_t *left, bin_tree_t *right, in create_token_tree()
3671 bin_tree_t *tree; in create_token_tree()
3705 mark_opt_subexp (void *extra, bin_tree_t *node) in mark_opt_subexp()
3732 free_tree (void *extra, bin_tree_t *node) in free_tree()
3744 static bin_tree_t *
3745 duplicate_tree (const bin_tree_t *root, re_dfa_t *dfa) in duplicate_tree()
3747 const bin_tree_t *node; in duplicate_tree()
3748 bin_tree_t *dup_root; in duplicate_tree()
3749 bin_tree_t **p_new = &dup_root, *dup_node = root->parent; in duplicate_tree()
3769 const bin_tree_t *prev = NULL; in duplicate_tree()