13
13
#define TREE_TRAVERSE_H
14
14
#include "tree_cursor.hpp"
16
int minimal_arity (tree t);
17
int maximal_arity (tree t);
18
bool correct_arity (tree t, int n);
19
int insert_point (tree t, int i);
20
bool is_dynamic (tree t);
16
21
bool is_accessible_child (tree t, int i);
17
22
array<tree> accessible_children (tree t);
23
bool all_accessible (tree t);
24
bool none_accessible (tree t);
26
string get_name (tree t);
27
string get_long_name (tree t);
28
string get_child_name (tree t, int i);
29
string get_child_long_name (tree t, int i);
30
string get_child_type (tree t, int i);
19
32
path next_valid (tree t, path p);
20
33
path previous_valid (tree t, path p);
34
path next_accessible (tree t, path p);
35
path previous_accessible (tree t, path p);
21
36
path next_word (tree t, path p);
22
37
path previous_word (tree t, path p);
23
38
path next_node (tree t, path p);
32
47
bool inside_same (tree t, path p, path q, tree_label which);
33
48
bool more_inside (tree t, path p, path q, tree_label which);
50
array<tree> search_sections (tree t);
51
path previous_section (tree t, path p);
35
53
#endif // defined TREE_TRAVERSE_H