Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cdt-dev] AST/DOM refactoring

Hi Doug
This answer is very helpfull for us, thanks! I think we will use DOM to do our 

The IP review shouldn't be a problem for us. Since our work is a term project 
for our university we should be aware of any plagatisme and have to document 
every external source anyway. At the moment we think we will only use cdt, 
ltk and our own code.

Am Freitag, 21. April 2006 17:17 schrieb Doug Schaefer:
> Great question that I've been asked often and should really documented in a
> developer FAQ on the wiki somewhere.
> Yes, we do have a number of different code models. A lot of it is
> historical, but they also meet different requirements. We'll try to reduce
> the duplication over time, so here's what we have:
> CModel - the first code model. Used to populate Outline view and Project
> Navigator. Also includes some build information which will be expanded over
> time. Also gives a CDT view on the IResource tree.
> core.parser.ast - the old parser. Currently used by the CModel, used to be
> used by most search feature. This AST is deprecated and we'll eventually
> move the CModel off if it and remove it.
> DOM - the new parser. This is where we are trying to move everyone. This is
> where we'd like to focus refactoring. It's structure is similar to JDT's
> DOM so hopefully we can make CDT refactoring similar to JDT refactoring as
> well.
> PDOM - actually part of the DOM. Used to provide a project wide index to
> various declarations and references, amongst other things. Used by various
> search features. The index is *P*ersisted in the workspace metadata. The
> intention is to be able to navigate between objects in the DOM and PDOM
> seamlessly. DOM to PDOM works pretty cleanly, but it is yet to be seen how
> well we can move back to the DOM. Refactoring would need this kind of path,
> I would think.
> Hope this helps, keep the questions coming and I'll try to answer.
> Doug Schaefer, QNX Software Systems
> Eclipse CDT Project Lead, Tools PMC member
> -----Original Message-----
> From: cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On
> Behalf Of Leo Büttiker
> Sent: Friday, April 21, 2006 10:41 AM
> To: cdt-dev@xxxxxxxxxxx
> Subject: [cdt-dev] AST/DOM refactoring
> As we mention befor we start with a term project that will implement
> refactorings for cdt.
> Now we are a bit confused about so many implentations of dom, ast, scanner
> and
> parsers. We've looked now depper in the code and the documentation. But we
> still not sure where to start.
> CModel (which use parser.ast and internal.core.parser) looks a bit out of
> date
> but is used in many package, is this right? So should we use instead CDOM
> (core.dom, core.dom.ast with the parser core.dom.parser.cpp and the scanner
> internal.core.parser.scanner2)? Or even the very new pdom (which use both
> CDOM and CModel)? Would the pdom get stable in the next days? This
> important
> because we've only 10 weeks left for our work.
> Or the short form of all this question: Where should we start to add
> writabilty to perform refactorings (CModel, CDOM or anywhere else)?
> Any help would be appreciated
> Leo Büttiker
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx
> _______________________________________________
> cdt-dev mailing list
> cdt-dev@xxxxxxxxxxx

Back to the top