| 320 | |
| 321 | |
| 322 | class CommandSplitter: |
| 323 | def __init__(self): |
| 324 | self.cmd_pattern = re.compile( |
| 325 | "([^\\s]*\\s+)?(?P<clangcmd>[^\\s]*clang.*)" |
| 326 | " -c (?P<infile>.*) -o (?P<outfile>.*)") |
| 327 | |
| 328 | def process(self, compilation_unit): |
| 329 | cmd = self.cmd_pattern.match(compilation_unit['command']) |
| 330 | outfilename = cmd.group('outfile') |
| 331 | infilename = cmd.group('infile') |
| 332 | infile = Path(compilation_unit['directory']).joinpath(infilename) |
| 333 | return (cmd.group('clangcmd'), infilename, infile, outfilename) |
| 334 | |
| 335 | |
| 336 | def parse_ninja_deps(ninja_deps): |
no outgoing calls
no test coverage detected
searching dependent graphs…