Expand description
§icb-clang
Clang‑based C/C++ frontend for ICB.
Provides parsing of single files or entire projects described by
compile_commands.json. The parser returns a stream of [RawNode]
facts that the rest of the ICB pipeline can consume.
§Example (single file)
use icb_clang::parser::parse_cpp_file;
let facts = parse_cpp_file("int main() { return 0; }", &[], Some("main.cpp"), true).unwrap();
assert!(!facts.is_empty());§Example (project via compile_commands.json)
use std::path::Path;
use icb_clang::project::parse_project;
let all_files = parse_project(
Path::new("compile_commands.json"),
Path::new("."),
true,
true,
).unwrap();