Each line in the file is a JSON object that has the name of the main source file followed by the list of system header files included directly or indirectly from that file.
For example:
{"source":"/tmp/foo.c", "includes":["/usr/include/stdio.h", "/usr/include/stdlib.h"]}
To reduce the amount of data written to the file, only the system headers that are directly included from a file that isn't in the system directory are recorded.
Can we make this HeaderIncludeFormatEnum instead of std::string?