Compilation Database
A compilation database contains necessary information about the include paths and possible compiler flags that should be used for an individual source file. It follows the JSON Compilation Database Format Specification (see https://clang.llvm.org/docs/JSONCompilationDatabase.html).
It is basically a list of CompilationDatabaseEntry entries. For now, we are primarily interested in the include paths, but in the future, we might extend this to other compiler flags.
Types
This represents a parsed CompilationDatabaseEntry with all necessary information extracted.
Functions
This function returns the first node that matches the name on the supplied list of nodes.
A shortcut to call firstOrNull using the [] syntax.
A shortcut to call byNameOrNull using the [] syntax.
Returns the include paths for the specified file.
Returns defined symbols for the specified file.
Properties
Returns the include paths for all files in compilation database.
A cached list of components and their files. Can be used to supply TranslationConfiguration.softwareComponents with the necessary files to parse for each component.