Hi Markus,
thanks for the quick response:
“==> I'd recommend to make a copy of
PDOMCPPLinkage and PDOMCPPLinkageFactory and remove the stuff you
don't need for UNO-IDL + change the linkage-id.
To support composition of index-fragments (index for
multiple projects) you also need to create a copy (and remove unneeded
stuff) of CPPCompositesFactory. You need to make CIndex.getCompositeFactory()
return your factory.“
All start with sub-classing the PDOMCPPLinkage for the moment ->
less code in my project, and I profit from all your bug fixes. I will just add the
new linkage ID in order to separate the UNO IDL symbols from the C++ symbols.
As I said, it seems that all valid UNO IDL AST trees are a subset of all legal
C++ AST trees, without bending the meaning of the ast node types. As long as
that assertion holds true, I don’t see a problem with subclassing
PDOMCPPLinkage. Lets see how far I succeed.
“If things work out, I think it'd be best to
integrate the few parts that are necessary (ILinkage.UNO_IDL,
PDOMUNOIDLLinkage, ...) into CDT.”
I’ll let yet know.
Jens Elmenthaler.