Show HN: Anyone interested in a tool helps to explore C++ ASTs
uvic-aurora.github.io
uvic-aurora.github.io
It looks like the compilation database is only used for discovering source files, without any additional cross translation unit analysis [1]. Even if you don't plan on implementing data flow tracking or other passes, it can still be interesting to know on which translation unit a function declaration is defined on.
Also, it seems we always have to recompile each unit when switching between source files. Consider pre-compiling and caching so it's only done once. That should also enable users to search across files/ASTs.
[1]: https://clang.llvm.org/docs/analyzer/user-docs/CrossTranslat...
Feel free to leave a comment if you have any questions. Thanks!
I work on a related project called sem (Ataraxy-Labs/sem) that takes ASTs in a different direction — extracting semantic entities from tree-sitter ASTs to build cross-file dependency graphs with git history tracking. Would be curious if you've thought about leveraging Clang's richer AST to do cross-file entity analysis for C++.