Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def count_files(tree_el):
- case = FileTreeVisitor()
- @case(Root)
- def root(tree_el):
- return reduce(lambda a, b: a + count_files(b), tree_el.childs, 0)
- @case(Folder)
- def folder(tree_el):
- return reduce(lambda a, b: a + count_files(b), tree_el.childs, 0)
- @case(File)
- def file(tree_el):
- return 1
- return case.apply(tree_el)
Add Comment
Please, Sign In to add comment