<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body style='font-size: 10pt; font-family: Verdana,Geneva,sans-serif'>
<p>Just go for the C++ API : libtooling</p>
<p>You will have all you need.</p>
<p> </p>
<p>David.</p>
<p>Le 2016-07-08 21:10, Jonathan Müller via cfe-dev a écrit :</p>
<blockquote type="cite" style="padding: 0 0.4em; border-left: #1010ff 2px solid; margin: 0"><!-- html ignored --><!-- head ignored --><!-- meta ignored -->
<div class="pre" style="margin: 0; padding: 0; font-family: monospace"><span style="white-space: nowrap;">Hello,</span><br /><br /> I'm working on a C++ documentation generator "standardese" (<a href="https://github.com/foonathan/standardese/">https://github.com/foonathan/standardese/</a>). I'm using libclang for parsing.<br /><br /> Unfortunately I've run into an issue with it: the API isn't providing me all the information that I need. There are things that aren't exposed by the API, for example whether a constructor is explicit, a function constexpr, or the noexcept expression.<br /><br /> I was forced to go to manual parsing of the source code of a cursor by tokenizing it with the help of Boost.Wave (because libclang doesn't give me the preprocessed tokens). This worked relatively good but I now ran into an issue with template specializations (parsing `template <> class c<a < b> {};), so my naive approach doesn't work anymore and I'd need to write a fully fledged parser.<br /><br /><span style="white-space: nowrap;">I've also encountered a few things that might be bugs.</span><br /> I can report those, but when looking at <a href="https://llvm.org/bugs/buglist.cgi?product=clang&component=libclang&resolution=---&list_id=100919">https://llvm.org/bugs/buglist.cgi?product=clang&component=libclang&resolution=---&list_id=100919</a>, there are almost only unassigned, NEW bugs.<br /><br /> I would volunteer to maintain it myself but I have no experience with the internal APIs or the clang project and I'm lacking the time to learn them *and* work on standardese.<br /><br /> So my question: Is there someone actively maintaining libclang? What are the future plans for the API?<br /><span style="white-space: nowrap;">If there is someone I'll provide active feedback and feature requests.</span><br /><br /> Jonathan<br /> _______________________________________________<br /><span style="white-space: nowrap;">cfe-dev mailing list</span><br /><span style="white-space: nowrap;"><a href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a></span><br /><span style="white-space: nowrap;"><a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a></span></div>
</blockquote>
<p> </p>
<div>-- <br />
<div class="pre" style="margin: 0; padding: 0; font-family: monospace">David Come</div>
</div>
</body></html>