r188569 - Introduce the clangIDE library.

Chandler Carruth chandlerc at google.com
Fri Aug 16 17:08:36 PDT 2013


On Fri, Aug 16, 2013 at 5:03 PM, Argyrios Kyrtzidis <akyrtzi at gmail.com>wrote:

> On Aug 16, 2013, at 4:39 PM, Chandler Carruth <chandlerc at google.com>
> wrote:
>
> On Fri, Aug 16, 2013 at 11:17 AM, Argyrios Kyrtzidis <akyrtzi at gmail.com>wrote:
>
>> Author: akirtzidis
>> Date: Fri Aug 16 13:17:55 2013
>> New Revision: 188569
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=188569&view=rev
>> Log:
>> Introduce the clangIDE library.
>>
>> Libclang has a lot of functionality that is inaccessible.
>> The purpose of clangIDE is to move most of the functionality of libclang
>> to it so we
>> can expose it and have libclang be more of a thin C wrapper over clangIDE.
>>
>> Start by moving the USR generation functionality into clangIDE.
>>
>
> I really like the general direction here, but I think it would have been
> nice to send an email to the dev list with the plan, and discuss some of
> the high level issues first.
>
> For example, I strongly object to the name 'IDE'. This isn't an Integrated
> Development Environment, it is a library. I have a strong suspicion that we
> don't even want a *single* library for all of the functionality being
> pulled out of libclang, and instead a small collection of them based on the
> specific functionality provided. This is similar to how we split up the
> Tooling library (for integrating tools with the driver and frontend
> functionality) and the AST Matchers library. We also already have the
> beginnings of this with the Index library and the Edit library.
>
> I'm not trying to claim what the right name is, but I don't think it is
> IDE. I think what would help to figure out the right name is to look at the
> end set of functionality (at a high level) that is being abstracted out of
> libclang.
>
>
> I don't have any strong preference, we could have libIndex and
> libCodeCompletion, which are the major pieces of libclang.
>

I think that's at least a much better starting point for the design. USRs
make the most sense in a library dealing with indexing IMO.

I don't know enough of libclang's internals to really effectively evaluate
this, I was largely hoping to start the discussion. =]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130816/77158220/attachment.html>


More information about the cfe-commits mailing list