15 output_file_names = set()
16 output_file_stream =
None
18 with open(input_filename,
"r")
as input_file_stream:
19 for line
in input_file_stream.readlines():
20 regex = re.search(
"# [0-9]* \"([A-Za-z_0-9-\./]*h)\"", line)
22 if output_file_stream:
23 output_file_stream.close()
24 output_file_stream =
None
26 output_file_name = os.path.relpath(os.path.abspath(regex.group(1)))
27 print(output_file_name)
29 if output_file_name
in output_file_names:
30 output_file_stream = open(output_file_name,
"r+")
32 output_path = os.path.dirname(output_file_name)
34 if (output_path !=
"")
and (
not os.path.exists(output_path)):
35 os.makedirs(output_path)
36 output_file_stream = open(output_file_name,
"w+")
37 output_file_names.add(output_file_name)
39 output_file_stream.seek(0, 2)
41 if output_file_stream
is not None:
42 output_file_stream.write(line)
44 output_file_stream.close()
45 output_file_stream =
None
47 for output_file_name
in output_file_names:
48 os.system(
"clang-format -i " + output_file_name)