pub fn enumerate_paths_to_leaves(tree: &RuleTree) -> Vec<RulePath> {
    let paths = enumerate_paths_to_leaves_rec(tree, None);
    for path in &paths {
        assert_eq!(path.rules.len(), path.undefined_term_pairs.len() + 1);
    }
    paths
}
/// Enumerate all paths from root to leaves. Note: this is not optimized for
/// efficiency, values are cloned for each path.
Enumerate all paths from root to leaves. Note: this is not optimized for
efficiency, values are cloned for each path.
Enumerate all paths from root to leaves . Note : this is not optimized for efficiency values are cloned for each path .
pub fn enumerate_paths_to_leaves(tree: &RuleTree) -> Vec<RulePath> {
    let paths = enumerate_paths_to_leaves_rec(tree, None);
    for path in &paths {
        assert_eq!(path.rules.len(), path.undefined_term_pairs.len() + 1);
    }
    paths
}
pub fn enumerate_paths_to_leaves ( tree : & RuleTree ) -> Vec < RulePath > { let paths = enumerate_paths_to_leaves_rec ( tree , None ) ; for path in & paths { assert_eq ! ( path rules len ( ) path undefined_term_pairs len ( ) 1 ) ; } paths }
Enumerate all paths from root to leaves.
Enumerate all paths from root to leaves .
tree
&RuleTree
tree
&RuleTree