Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 365065 - [types] Handle discouraged member names gracefully
Summary: [types] Handle discouraged member names gracefully
Status: NEW
Alias: None
Product: TMF
Classification: Modeling
Component: Xtext (show other bugs)
Version: 2.1.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-29 09:40 EST by Jan Koehnlein CLA
Modified: 2011-11-29 09:40 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Koehnlein CLA 2011-11-29 09:40:25 EST
Even though it's discouraged, Java member names can contain dots and dollars.
The ClasspathTypeProvider can deal with that situation. But JDT-based ones can't as the resource URIs are derived form the JDT signature, which is a plain String. 
So it is impossible to distinguish a class 'Outer$Inner' from an inner class 'Inner' inside the top level class 'Outer'.

This is especially annoying, as Google Guice prefixes copied classes from Guava with a $.

See org.eclipse.xtext.common.types.access.impl.ClasspathTypeProviderTest.testFindTypeByName_$ImmutableList()
org.eclipse.xtext.common.types.access.jdt.JdtTypeProvider.createMirrorForFQN(String) (second if)