Just played around with this, a wrapper to Clang's #cpp AST that makes it super easy to traverse.
You create a parser that can take in a list of headers/source files, and specify any defines, flags, or include directories you want. From there it gives you an AST that can be traversed to check for docstrings (`/// or /**`), class names, members, `public/private` keywords, `[[attribute]]` tags, base classes, if its a struct or a class, and any error messages from clang!
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!