Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 49392 Details for
Bug 156177
[search] interfaces and annotations could be found with only one requets of searchAllTypeName
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Proposed fix
bug156177_001.txt (text/plain), 12.55 KB, created by
David Audel
on 2006-09-05 06:38:14 EDT
(
hide
)
Description:
Proposed fix
Filename:
MIME Type:
Creator:
David Audel
Created:
2006-09-05 06:38:14 EDT
Size:
12.55 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jdt.core >Index: search/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java,v >retrieving revision 1.34 >diff -u -r1.34 QualifiedTypeDeclarationPattern.java >--- search/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java 22 Jun 2006 14:12:26 -0000 1.34 >+++ search/org/eclipse/jdt/internal/core/search/matching/QualifiedTypeDeclarationPattern.java 5 Sep 2006 10:39:08 -0000 >@@ -97,6 +97,7 @@ > switch (pattern.typeSuffix) { > case INTERFACE_SUFFIX : > case CLASS_AND_INTERFACE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : > break; > default: > return false; >@@ -112,7 +113,13 @@ > } > break; > case ANNOTATION_TYPE_SUFFIX : >- if (this.typeSuffix != pattern.typeSuffix) return false; >+ switch (pattern.typeSuffix) { >+ case ANNOTATION_TYPE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : >+ break; >+ default: >+ return false; >+ } > break; > case CLASS_AND_INTERFACE_SUFFIX : > switch (pattern.typeSuffix) { >@@ -153,6 +160,9 @@ > case INTERFACE_SUFFIX : > output.append("InterfaceDeclarationPattern: qualification<"); //$NON-NLS-1$ > break; >+ case INTERFACE_AND_ANNOTATION_SUFFIX: >+ output.append("InterfaceAndAnnotationDeclarationPattern: qualification<"); //$NON-NLS-1$ >+ break; > case ENUM_SUFFIX : > output.append("EnumDeclarationPattern: qualification<"); //$NON-NLS-1$ > break; >Index: search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java,v >retrieving revision 1.60 >diff -u -r1.60 TypeDeclarationPattern.java >--- search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java 29 Mar 2006 03:13:59 -0000 1.60 >+++ search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationPattern.java 5 Sep 2006 10:39:08 -0000 >@@ -243,6 +243,7 @@ > switch (pattern.typeSuffix) { > case INTERFACE_SUFFIX : > case CLASS_AND_INTERFACE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX: > break; > default: > return false; >@@ -258,7 +259,13 @@ > } > break; > case ANNOTATION_TYPE_SUFFIX : >- if (this.typeSuffix != pattern.typeSuffix) return false; >+ switch (pattern.typeSuffix) { >+ case ANNOTATION_TYPE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX: >+ break; >+ default: >+ return false; >+ } > break; > case CLASS_AND_INTERFACE_SUFFIX : > switch (pattern.typeSuffix) { >@@ -280,6 +287,16 @@ > return false; > } > break; >+ case INTERFACE_AND_ANNOTATION_SUFFIX : >+ switch (pattern.typeSuffix) { >+ case INTERFACE_SUFFIX : >+ case ANNOTATION_TYPE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : >+ break; >+ default: >+ return false; >+ } >+ break; > } > > if (!matchesName(this.simpleName, pattern.simpleName)) >@@ -331,6 +348,7 @@ > case ANNOTATION_TYPE_SUFFIX : > case CLASS_AND_INTERFACE_SUFFIX : > case CLASS_AND_ENUM_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : > // null key already returns all types > // key = new char[] {ONE_STAR[0], SEPARATOR, ONE_STAR[0]}; > break; >@@ -365,6 +383,9 @@ > case INTERFACE_SUFFIX : > output.append("InterfaceDeclarationPattern: pkg<"); //$NON-NLS-1$ > break; >+ case INTERFACE_AND_ANNOTATION_SUFFIX: >+ output.append("InterfaceAndAnnotationDeclarationPattern: pkg<"); //$NON-NLS-1$ >+ break; > case ENUM_SUFFIX : > output.append("EnumDeclarationPattern: pkg<"); //$NON-NLS-1$ > break; >Index: search/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java,v >retrieving revision 1.28 >diff -u -r1.28 ClassFileMatchLocator.java >--- search/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java 8 Jun 2006 13:08:57 -0000 1.28 >+++ search/org/eclipse/jdt/internal/core/search/matching/ClassFileMatchLocator.java 5 Sep 2006 10:39:08 -0000 >@@ -268,6 +268,8 @@ > return kind == TypeDeclaration.CLASS_DECL || kind == TypeDeclaration.INTERFACE_DECL; > case CLASS_AND_ENUM_SUFFIX: > return kind == TypeDeclaration.CLASS_DECL || kind == TypeDeclaration.ENUM_DECL; >+ case INTERFACE_AND_ANNOTATION_SUFFIX: >+ return kind == TypeDeclaration.INTERFACE_DECL || kind == TypeDeclaration.ANNOTATION_TYPE_DECL; > case TYPE_SUFFIX: // nothing > } > return true; >Index: search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java,v >retrieving revision 1.13 >diff -u -r1.13 TypeDeclarationLocator.java >--- search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java 10 May 2006 18:03:42 -0000 1.13 >+++ search/org/eclipse/jdt/internal/core/search/matching/TypeDeclarationLocator.java 5 Sep 2006 10:39:08 -0000 >@@ -63,6 +63,9 @@ > case INTERFACE_SUFFIX: > if (!type.isInterface() || type.isAnnotationType()) return IMPOSSIBLE_MATCH; > break; >+ case INTERFACE_AND_ANNOTATION_SUFFIX: >+ if (!(type.isInterface() || type.isAnnotationType())) return IMPOSSIBLE_MATCH; >+ break; > case ENUM_SUFFIX: > if (!type.isEnum()) return IMPOSSIBLE_MATCH; > break; >Index: search/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java,v >retrieving revision 1.7 >diff -u -r1.7 MultiTypeDeclarationPattern.java >--- search/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java 10 May 2006 18:03:43 -0000 1.7 >+++ search/org/eclipse/jdt/internal/core/search/matching/MultiTypeDeclarationPattern.java 5 Sep 2006 10:39:08 -0000 >@@ -87,6 +87,7 @@ > switch (pattern.typeSuffix) { > case INTERFACE_SUFFIX : > case CLASS_AND_INTERFACE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : > break; > default: > return false; >@@ -102,7 +103,13 @@ > } > break; > case ANNOTATION_TYPE_SUFFIX : >- if (this.typeSuffix != pattern.typeSuffix) return false; >+ switch (pattern.typeSuffix) { >+ case ANNOTATION_TYPE_SUFFIX : >+ case INTERFACE_AND_ANNOTATION_SUFFIX : >+ break; >+ default: >+ return false; >+ } > break; > case CLASS_AND_INTERFACE_SUFFIX : > switch (pattern.typeSuffix) { >@@ -205,6 +212,9 @@ > case INTERFACE_SUFFIX : > output.append("MultiInterfaceDeclarationPattern: "); //$NON-NLS-1$ > break; >+ case INTERFACE_AND_ANNOTATION_SUFFIX : >+ output.append("MultiInterfaceAndAnnotationDeclarationPattern: "); //$NON-NLS-1$ >+ break; > case ENUM_SUFFIX : > output.append("MultiEnumDeclarationPattern: "); //$NON-NLS-1$ > break; >Index: search/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java,v >retrieving revision 1.36 >diff -u -r1.36 BasicSearchEngine.java >--- search/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java 23 Jun 2006 15:38:27 -0000 1.36 >+++ search/org/eclipse/jdt/internal/core/search/BasicSearchEngine.java 5 Sep 2006 10:39:07 -0000 >@@ -303,6 +303,8 @@ > return ("CLASS_AND_ENUM"); //$NON-NLS-1$ > case IJavaSearchConstants.CLASS_AND_INTERFACE: > return ("CLASS_AND_INTERFACE"); //$NON-NLS-1$ >+ case IJavaSearchConstants.INTERFACE_AND_ANNOTATION: >+ return ("INTERFACE_AND_ANNOTATION"); //$NON-NLS-1$ > } > return "UNKNOWN"; //$NON-NLS-1$ > } >@@ -411,6 +413,8 @@ > return (modifiers & (Flags.AccAnnotation | Flags.AccInterface)) == 0; > case IIndexConstants.INTERFACE_SUFFIX : > return (modifiers & Flags.AccInterface) != 0; >+ case IIndexConstants.INTERFACE_AND_ANNOTATION_SUFFIX: >+ return (modifiers & (Flags.AccInterface | Flags.AccAnnotation)) != 0; > case IIndexConstants.ENUM_SUFFIX : > return (modifiers & Flags.AccEnum) != 0; > case IIndexConstants.ANNOTATION_TYPE_SUFFIX : >@@ -433,6 +437,9 @@ > case IIndexConstants.INTERFACE_SUFFIX : > if (typeKind != TypeDeclaration.INTERFACE_DECL) return false; > break; >+ case IIndexConstants.INTERFACE_AND_ANNOTATION_SUFFIX: >+ if (typeKind != TypeDeclaration.INTERFACE_DECL && typeKind != TypeDeclaration.ANNOTATION_TYPE_DECL) return false; >+ break; > case IIndexConstants.ENUM_SUFFIX : > if (typeKind != TypeDeclaration.ENUM_DECL) return false; > break; >@@ -669,6 +676,9 @@ > case IJavaSearchConstants.INTERFACE : > typeSuffix = IIndexConstants.INTERFACE_SUFFIX; > break; >+ case IJavaSearchConstants.INTERFACE_AND_ANNOTATION : >+ typeSuffix = IIndexConstants.INTERFACE_AND_ANNOTATION_SUFFIX; >+ break; > case IJavaSearchConstants.ENUM : > typeSuffix = IIndexConstants.ENUM_SUFFIX; > break; >@@ -901,6 +911,9 @@ > case IJavaSearchConstants.INTERFACE : > typeSuffix = IIndexConstants.INTERFACE_SUFFIX; > break; >+ case IJavaSearchConstants.INTERFACE_AND_ANNOTATION : >+ typeSuffix = IIndexConstants.INTERFACE_AND_ANNOTATION_SUFFIX; >+ break; > case IJavaSearchConstants.ENUM : > typeSuffix = IIndexConstants.ENUM_SUFFIX; > break; >Index: search/org/eclipse/jdt/core/search/SearchPattern.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/core/search/SearchPattern.java,v >retrieving revision 1.63 >diff -u -r1.63 SearchPattern.java >--- search/org/eclipse/jdt/core/search/SearchPattern.java 3 Aug 2006 17:23:01 -0000 1.63 >+++ search/org/eclipse/jdt/core/search/SearchPattern.java 5 Sep 2006 10:39:07 -0000 >@@ -1088,6 +1088,8 @@ > return createTypePattern(stringPattern, limitTo, matchRule, IIndexConstants.CLASS_AND_ENUM_SUFFIX); > case IJavaSearchConstants.INTERFACE: > return createTypePattern(stringPattern, limitTo, matchRule, IIndexConstants.INTERFACE_SUFFIX); >+ case IJavaSearchConstants.INTERFACE_AND_ANNOTATION: >+ return createTypePattern(stringPattern, limitTo, matchRule, IIndexConstants.INTERFACE_AND_ANNOTATION_SUFFIX); > case IJavaSearchConstants.ENUM: > return createTypePattern(stringPattern, limitTo, matchRule, IIndexConstants.ENUM_SUFFIX); > case IJavaSearchConstants.ANNOTATION_TYPE: >Index: search/org/eclipse/jdt/core/search/IJavaSearchConstants.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/core/search/IJavaSearchConstants.java,v >retrieving revision 1.25 >diff -u -r1.25 IJavaSearchConstants.java >--- search/org/eclipse/jdt/core/search/IJavaSearchConstants.java 29 Mar 2006 03:14:01 -0000 1.25 >+++ search/org/eclipse/jdt/core/search/IJavaSearchConstants.java 5 Sep 2006 10:39:06 -0000 >@@ -96,6 +96,13 @@ > * @since 3.1 > */ > int CLASS_AND_INTERFACE= 10; >+ >+ /** >+ * The searched element is an interface or annotation type. >+ * More selective than using {@link #TYPE}. >+ * @since 3.3 >+ */ >+ int INTERFACE_AND_ANNOTATION= 11; > > /* Nature of match */ > >Index: search/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java,v >retrieving revision 1.32 >diff -u -r1.32 IIndexConstants.java >--- search/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java 29 Mar 2006 03:13:59 -0000 1.32 >+++ search/org/eclipse/jdt/internal/core/search/indexing/IIndexConstants.java 5 Sep 2006 10:39:08 -0000 >@@ -35,6 +35,7 @@ > char TYPE_SUFFIX = 0; > char CLASS_AND_ENUM_SUFFIX = IJavaSearchConstants.CLASS_AND_ENUM; > char CLASS_AND_INTERFACE_SUFFIX = IJavaSearchConstants.CLASS_AND_INTERFACE; >+ char INTERFACE_AND_ANNOTATION_SUFFIX = IJavaSearchConstants.INTERFACE_AND_ANNOTATION; > char SEPARATOR= '/'; > char SECONDARY_SUFFIX = 'S'; >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 156177
:
49392
|
49594