Getting USRs in a C++ library

Hi Doug,

we've found that for some of the large scale analysis we run USRs
would be great to have;
currently they're buried as implementation details of libclang though.
Would it make sense to pull them out into a library, and have libclang
be a thin wrapper around the (already C++) implementation? If yes,
into which library would we want to put it?

Thanks!
/Manuel

Hi Doug,

we've found that for some of the large scale analysis we run USRs
would be great to have;
currently they're buried as implementation details of libclang though.
Would it make sense to pull them out into a library, and have libclang
be a thin wrapper around the (already C++) implementation? If yes,
into which library would we want to put it?

Currently libIndex is effectively dead code. I'd suggest removing what it currently has and pulling in such kind of stuff from libclang.

I just killed the index library. I think it's fine to pull some of the implementation details of libclang up into the other libraries. USR generation, for example, could even reasonably live in AST.

  - Doug

Doug did earlier that this morning.

-- Marshall

Marshall Clow Idio Software <mailto:mclow.lists@gmail.com>

A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).
        -- Yu Suzuki

I’m not so keen on that. USRs seem like an extension, not a core part of the ASTs themselves. Not even the CFG is in libAST.

Killing off the old libIndex is goodness, but I’d be fine with putting this in a new svelte libIndex, or possibly libAnalysis (where we have a variety of other things for “thinking” about code, e.g. the CFGs).