summaryrefslogtreecommitdiff
path: root/lab/parse_all.py
blob: 3b2465d9e5a06d62bb5c8fac0a40b8e77741760a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
"""Parse every Python file in a tree."""

import os
import sys

from coverage.parser import PythonParser

for root, dirnames, filenames in os.walk(sys.argv[1]):
    for filename in filenames:
        if filename.endswith(".py"):
            filename = os.path.join(root, filename)
            print(f":: {filename}")
            try:
                par = PythonParser(filename=filename)
                par.parse_source()
                par.arcs()
            except Exception as exc:
                print(f"  ** {exc}")