Okay – I’ve raised a
couple of bugs to look at this.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=268970
https://bugs.eclipse.org/bugs/show_bug.cgi?id=268972
Cheers,
Richard
From: cdt-dev-bounces@xxxxxxxxxxx
[mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Schorn, Markus
Sent: Tuesday 17 March 2009 12:48
To: CDT General developers list.
Subject: RE: [cdt-dev] IType and @noextend
We are past API-freeze, so I think the answer is no. However, you
can use IASTTranslationUnit.getNodeFactory(). The method is marked as
@noreference, you can request to make it part of the public API.
If you have the need to create an IASTTranslationUnit the situation
is more difficult and we'd need some ideas on how to deal with that. -->
bugzilla.
Markus.
From: cdt-dev-bounces@xxxxxxxxxxx
[mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Richard Miskin
Sent: Tuesday, March 17, 2009 11:49 AM
To: 'CDT General developers list.'
Subject: RE: [cdt-dev] IType and @noextend
Importance: Low
Markus,
Thanks for your response; using
the factory methods makes sense and will clean up a lot of our code. Do you
think that a public mechanism for accessing node-factories will be in
place for CDT 6.0?
Cheers,
Richard
From: cdt-dev-bounces@xxxxxxxxxxx
[mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf Of Schorn, Markus
Sent: Tuesday 17 March 2009 08:44
To: CDT General developers list.
Subject: RE: [cdt-dev] IType and @noextend
Extending AbstractLanguage is supported. The primary use case is to
configure existing parsers via IScannerExtensionConfiguration,
ICParserExtensionConfiguration and ICPPParserExtensionConfiguration.
We are close to also allow for introducing new parsers that use the
same AST. For that we have node factories (interface INodeFactory). However, at
this point there is no public way to access the node-factories.
Extending the AST/Types outside of CDT is not supported. Extensions
to the AST need to be public such that clients of the AST can deal with them.
From:
cdt-dev-bounces@xxxxxxxxxxx [mailto:cdt-dev-bounces@xxxxxxxxxxx] On Behalf
Of Richard Miskin
Sent: Monday, March 16, 2009 6:20 PM
To: 'CDT General developers list.'
Subject: [cdt-dev] IType and @noextend
Importance: Low
Hi guys,
Looking at IType in CVS it seems to have gained an @noextend
and an @noimplement and the only implementations appear to be internal, so
shouldn’t be used. Indeed looking at other code a lot of the public
interfaces appear to have gained @noextend (e.g. ICBasicType, ICPPBasicType,
IASTNode, IASTTranslationUnit, ICASTCompositeTypeSpecifier etc). Is the
intention that there should be only the default CDT implementation of these?
We’re currently implementing our own AbstractLanguage
and have been carefully avoiding using internal code which means having to
implement our own versions of all of these interfaces. Is creating a new
language not supported in CDT 6.0? Is there some other way that this should be
done?
Cheers,
Richard
The
information transmitted is intended only for the person or entity to which it
is addressed and may contain confidential and/or privileged material. If you
are not the addressee, any disclosure, reproduction, copying, distribution, or
other dissemination or use of this communication is strictly prohibited. If you
have received this transmission in error please notify the sender immediately
and then delete this email.
Any
representations or commitments expressed in this email are subject to contract.
This
message has been scanned for viruses and dangerous content. However, it is
essential that the recipient also checks this message using commercially
available mail scanning and anti-virus software. IPL Information Processing
Limited accepts no liability for any loss or damage resulting from any virus or
other dangerous content in this message.
IPL
Information Processing Limited is registered in England and Wales under company
registration number 1418818. Registration took place at Cardiff on 10 May 1979.
IPL Information Processing Limited's registered office and normal place of
business is Eveleigh House, Grove Street, Bath, BA1 5LR, United Kingdom. IPL is
also registered for Value Added Tax (VAT) under registration number GB 601 2931
83.
The
information transmitted is intended only for the person or entity to which it
is addressed and may contain confidential and/or privileged material. If you
are not the addressee, any disclosure, reproduction, copying, distribution, or
other dissemination or use of this communication is strictly prohibited. If you
have received this transmission in error please notify the sender immediately
and then delete this email.
Any
representations or commitments expressed in this email are subject to contract.
This
message has been scanned for viruses and dangerous content. However, it is
essential that the recipient also checks this message using commercially
available mail scanning and anti-virus software. IPL Information Processing
Limited accepts no liability for any loss or damage resulting from any virus or
other dangerous content in this message.
IPL
Information Processing Limited is registered in England and Wales under company
registration number 1418818. Registration took place at Cardiff on 10 May 1979.
IPL Information Processing Limited's registered office and normal place of
business is Eveleigh House, Grove Street, Bath, BA1 5LR, United Kingdom. IPL is
also registered for Value Added Tax (VAT) under registration number GB 601 2931
83.
The
information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. If you are not the addressee, any disclosure, reproduction,
copying, distribution, or other dissemination or use of this
communication is strictly prohibited. If you have received this
transmission in error please notify the sender immediately and then
delete this email.
Any
representations or commitments expressed in this email are subject to
contract.
This
message has been scanned for viruses and dangerous content. However, it
is essential that the recipient also checks this message using
commercially available mail scanning and anti-virus software. IPL
Information Processing Limited accepts no liability for any loss or
damage resulting from any virus or other dangerous content in this
message.
IPL
Information Processing Limited is registered in England and Wales under
company registration number 1418818. Registration took place at Cardiff
on 10 May 1979. IPL Information Processing Limited's registered office
and normal place of business is Eveleigh House, Grove Street, Bath,
BA1 5LR, United Kingdom. IPL is also registered for Value Added Tax (VAT)
under registration number GB 601 2931 83.
|