Bug 82138 - [dom] API for acc flags on IBinding
Summary: [dom] API for acc flags on IBinding
Status: RESOLVED INVALID
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.1   Edit
Hardware: PC All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2005-01-04 10:17 EST by Tobias Widmer CLA
Modified: 2009-08-30 02:06 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Widmer CLA 2005-01-04 10:17:45 EST
200412210800: Bindings unlike the java model currently provide only a method 
to retrieve the modifiers of the resolved object, which are limited to the 
ones listed in class org.eclipse.jdt.core.dom.Modifier.

The information whether a variable binding resolves to an enum constant or to 
a field declared in an enum therefore cannot be retrieved from the binding. 
Surprisingly, the corresponding java element has this information when asked 
for its flags (see class org.eclipse.jdt.core.Flags and constant AccEnum).

For consistency, bindings should offer at least as much information in this 
case.
Comment 1 Markus Keller CLA 2005-01-10 11:51:51 EST
The specific request for IVariableBinding#isEnumConstant() has been provided in
bug 82216. Keeping this PR open as a general request for all flags.
Comment 2 Jerome Lanneluc CLA 2006-03-28 09:02:42 EST
Not sure what flags are missing. Please reopen when you have more info.
Comment 3 Markus Keller CLA 2006-07-15 12:14:50 EDT
The following flags are available on ..jdt.core.Flags, but not from IBinding#getModifiers():

AccInterface
AccSuper
AccSynthetic
AccDeprecated
AccBridge
AccVarargs
AccEnum
AccAnnotation

Interface, Synthetic, Deprecated, Varargs, Enum, and Annotation flags can currently be obtained from IBindings via other queries, but Super and Bridge are currently inaccessible from bindings. Super is not really interesting, but seeing whether a method is Bridge could be interesting at some time.

Since IBinding#getModifiers() can't supply the non-modifier flags without breaking API, the only missing information is IMethodBinding#isBridge().

Low priority for me.
Comment 4 Denis Roy CLA 2009-08-30 02:06:47 EDT
As of now 'LATER' and 'REMIND' resolutions are no longer supported.
Please reopen this bug if it is still valid for you.