Commit Graph

183 Commits

Author SHA1 Message Date
Tagir Valeev
f4531f9795 [java-indexing] OverridingMethodsSearch: javadoc
GitOrigin-RevId: 6fa186fd35f5fcd3514f5eba973cd22bbd004274
2024-10-11 08:10:27 +00:00
Yuriy Artamonov
47f1c44a90 [java] IJPL-158521 Actions: fix ellipsis in messages for Java actions
GitOrigin-RevId: bfce0d6efa8747660c4b9af3d8defbfa47e4509a
2024-09-15 14:50:09 +00:00
Ilya Kirillov
8f34a2a79f [java] allow providing exclusions for PsiShortNamesCache by specific languages
It will be additionally used in the following commit

KTIJ-30842

GitOrigin-RevId: 8370a2ef5157b8c4afff45cfbf6c1e563cb9cd82
2024-08-15 17:53:01 +00:00
Ilya Kirillov
3e42f78fcc [kotlin] Do not use resolve/LC in go to class/symbol for Kotlin
Instead, implement the functionality via Kotlin declarations. Previously, it worked in a mixed mode: some declarations were provided via LC, some via Kotlin declarations.

Additionally, this change makes Kotlin "go to symbol/class" fully dumb-aware.

New behavior:
- All declarations are now provided via plain Kotlin declarations.
- No Light Classes are used:
  - To avoid using LC, `PsiShortNamesCache` is adapted in a way that it can ignore `PsiShortNamesCache` implementations which are explicitly marked as producing generated declarations instead of existing Java-based PSI like `PsiClass`, `PsiMethod`, etc.
    - `KotlinShortNamesCache` is marked as such, so it's ignored.
- As no resolve is used, all Kotlin contributors work in dumb mode.
- For facade declarations, like callables (functions or properties) from a facade or a facade class itself, new Kotlin contributors create new `PsiElementBasedNavigationItem`:
   - It points to the original Kotlin declaration (or to a `KtFile` in the case of a facade class itself).
   - In go to class/symbol action, duplicated declarations are merged with the original ones, so they are used only for text search purposes.
     - It's reflected in the tesdata updates
- `GotoSymbolModel2.getFullName` is updated so it can handle not only `PsiElement` but also a `PsiElementNavigationItem`
- Behaviour of qualified name is stabilized:
  - Previously, it produced `(in Container).Foo` for LC-based classes and `Container.Foo` for plain Kotlin classes.
  - Now, it always produces `Container.Foo`
       - It's reflected in the tesdata updates

^KTIJ-30913 fixed
^KTIJ-30842 fixed

GitOrigin-RevId: c671f6e161dd530e19e8abbbc7046f1cd121908d
2024-08-09 19:06:53 +00:00
Anna Kozlova
893f148445 [kotlin] inheritors search tests
GitOrigin-RevId: ba05ca4248ae9fa0f357617f9f62242f18bc11f8
2023-12-05 21:40:43 +00:00
Nikolay Chashnikov
d67bdd5b72 [java] API cleanup: remove unused deprecated API (IDEA-322162)
GitOrigin-RevId: 8b8a875126194efe99989d51127072dd8e503d6e
2023-09-29 09:21:34 +00:00
Mikhail Pyltsin
52c0005828 IJ-CR-113485 IJ-CR-112205 [java-completion] IDEA-324073 Complete static methods with the first argument as qualifier
- added javadoc
- deleted Registry key for this completion

GitOrigin-RevId: fb4ed0cfb0bae66253a794141a6a197fa18b7a96
2023-09-06 10:35:34 +00:00
Mikhail Pyltsin
81d3b3f897 IJ-CR-113485 IJ-CR-112205 [java-completion] IDEA-324073 Complete static methods with the first argument as qualifier
- added extension points for other languages. Experimental

GitOrigin-RevId: 6a0383f0137b7e8418b51a1336a16dc3389e9470
2023-08-25 17:26:33 +00:00
Vladimir Krivosheev
227d75a1fc don't extend DynamicBundle
GitOrigin-RevId: 49cbebd629a92877dbeeffba8d97b0631fb9407e
2023-05-05 09:46:42 +00:00
Yann Cébron
da1a4aa513 IDEA-313278 Please add documentation on difference between ClassInheritorsSearch and DirectClassInheritorsSearch, cleanup
GitOrigin-RevId: 0621c206f6e6ea1abb8adf349d4d5da3e6e42a52
2023-02-22 13:21:24 +00:00
Yann Cébron
a8afc6751f IDEA-313278 Please add documentation on difference between ClassInheritorsSearch and DirectClassInheritorsSearch
GitOrigin-RevId: cb384338696bedda610df5cf4ea5f2d687134895
2023-02-21 15:33:41 +00:00
Tagir Valeev
e9832acb26 [java] Use pattern variables; other minor cleanup
GitOrigin-RevId: e2345bd54d92f6676c6fbc55955e85cbdc5c2793
2023-02-01 17:09:26 +00:00
Nikolay Chashnikov
98b622aa27 cleanup: remove redundant '@author' tags from javadoc comments - 5
Now we have Code Vision hints which determine the author via Git history and show it in the editor automatically, and this information is more accurate than the tags which were automatically added when files were created.

GitOrigin-RevId: e1f798814ca7f22747768b99cbcd962d820bbfb9
2023-01-18 17:01:41 +00:00
Anna Kozlova
76ece48d63 [kotlin] direct function overrides search
wrap search parameters to forbid kotlin class inheritance search from java overriding methods search, cause kotlin method overrides should be found separately and without LC

GitOrigin-RevId: 33bbefa169bc8ad4e6440e09d036e3b7ce11238e
2022-10-10 08:42:49 +00:00
Tagir Valeev
11595f3956 Fix most of JavaDoc <-> code mismatch warnings
GitOrigin-RevId: 9a87a8b90993b56cd045722734c5c5f466601ae3
2022-06-20 12:02:27 +00:00
Alexey Kudravtsev
ca680aa4d2 fix signatures: add correct wildcards
GitOrigin-RevId: 483d4ae0f0fdca915b666013e145062e2de1ea14
2022-06-05 17:14:38 +00:00
Florian Kistner
6b13ec47a5 KMA-432 Provide mechanism that inheritor searchers can use to avoid unnecessary work for participating queries
GitOrigin-RevId: 84cb945d4f6e979de56adcb50e3642bda80b9ab6
2022-05-31 13:30:51 +00:00
Nikolay Chashnikov
abc373560d [API] replace ApiStatus.ScheduledForRemoval annotation by 'forRemoval' attribute (IDEA-288466)
Since we don't want to specify planned removal date anymore, there is no need to use a separate annotation.

GitOrigin-RevId: a047c55475e0f4752a2842577e094fb041c6c05b
2022-02-11 15:12:14 +00:00
Dmitry Gridin
fb4cffb3b8 [kotlin] do not use codeUsageScope to find inheritors
This case is not yet supported

^KTIJ-16709
^KTIJ-19852 Fixed

GitOrigin-RevId: f6b0de7ca633f288ae91ab7427ccb9effa0d9c11
2021-10-19 10:15:08 +00:00
Alexey Kudravtsev
a897b7c13c optimization: return LocalSearchScope.EMPTY instead of GlobalSearchScope.EMPTY_SCOPE explicitly to avoid unnecessary FileBasedIndex accesses during search
GitOrigin-RevId: b7cf8f4b4dec2f79f2231b97b091cc0ed7978473
2021-09-15 16:28:39 +00:00
Vladimir Dolzhenko
c8e3d7d0c2 Restricting search scope with codeUsageScope
Relates to #KTIJ-16709

GitOrigin-RevId: d6e2783673aee658f0e8cc016371ef76f47613eb
2021-09-02 11:18:06 +00:00
Anna Kozlova
f33a1f5426 [functional expressions search] check method equality when applicable (IDEA-276298)
otherwise unrelated lambdas/method references may land in results when intermediate inheritors contain default methods

GitOrigin-RevId: aa5baae37ff676ca477ca41d82b782c42d5fda6c
2021-08-18 15:11:51 +00:00
Alexey Kudravtsev
0f8b901c57 cleanup
GitOrigin-RevId: 708e1501a81694b26effa8dbf8af1e3a77f8b07a
2021-07-14 14:07:26 +00:00
Alexey Kudravtsev
d75f19e731 make fastutil, StreamEx, icu4j libraries unavailable to api modules to avoid exposing them in OpenAPI, add test to enforce this contract
GitOrigin-RevId: 9f6b4a3ed011246c9a34055d251bd6a62e50358d
2021-07-14 12:35:04 +00:00
Alexey Kudravtsev
93d098eaa8 cleanup
GitOrigin-RevId: a5aad5aa7e35d6ddbd2b2e256141cc5e1913ec88
2021-07-14 11:38:48 +00:00
Alexey Kudravtsev
5107777d25 reduce usage of Trove4j in Open API modules
GitOrigin-RevId: 94c0e9126ec56e4d628536e129c521974c191c72
2021-07-13 15:05:34 +00:00
Dmitry Jemerov
749ce8a332 Cleanup: remove @author tags
GitOrigin-RevId: 9174eb8d77215b16f9f6c6074e6aced654d95ef1
2021-05-03 13:07:48 +00:00
Alexey Kudravtsev
415ca39535 EA-265492 (plugin) - T: SmartPointerManagerImpl.createSmartPsiElementPointer
GitOrigin-RevId: 6b8ba71732d3b68eb8be02835688d1fd8150f5b6
2021-04-16 17:02:07 +03:00
Vladimir Krivosheev
809b7ca201 deprecate ServiceManager.getService(project)
GitOrigin-RevId: 3805c3aac4e084c828558bf1b1570339f7f3b4a3
2021-03-26 21:30:32 +00:00
Nikolay Chashnikov
2125041499 [java] deprecation: add @ScheduledForRemoval annotation to deprecated elements (IDEA-259329)
GitOrigin-RevId: 9e43d4b84ea8860d2caf2928e6cd826597e67611
2021-02-12 16:33:10 +00:00
Brian McNamara
ca35b63d33 take into account use scope enlarger while inheritors/functional expression searches
GitOrigin-RevId: 8b62d47f2aef69308f891e2e537c76ece7d5e5ca
2021-02-04 12:49:15 +00:00
Nikolay Chashnikov
645a720b58 [java] API cleanup: remove unused API which was deprecated for a long time (IDEA-259329)
GitOrigin-RevId: b2f2c85514d360e8d716e6f136f7c11760086f0e
2021-01-15 22:21:07 +00:00
Nikolay Chashnikov
d88aeb8e54 [java] API cleanup: delete unused scheduled for removal API (IDEA-259329)
GitOrigin-RevId: 881133687fc13d56d06a737bfb143de38b9e8602
2021-01-13 13:39:53 +00:00
Dmitry Batkovich
3065547b80 use extended use scopes (by UseScopeEnlarger)
GitOrigin-RevId: 27b10a3019716a66beaee7101c1ff706caebf757
2020-10-21 11:22:40 +00:00
Vladimir Krivosheev
a67c59c561 platform.core.impl — remove dependency on intellij.platform.util.ui and intellij.platform.core.ui
java.psi.iml — remove dependency on intellij.platform.core.ui

GitOrigin-RevId: c1d4feb04c0471c7d17b5331b86738ee54a97f80
2020-09-21 13:40:47 +00:00
Alexey Kudravtsev
bbebd3d422 mark notnull array elements to diagnose EA-235908 - IAE: GenericsHighlightUtil.$$$reportNull$$$
GitOrigin-RevId: a5e3768e6d0a99a0bd0ee1296c131a4877bc5968
2020-08-22 13:08:26 +00:00
Anna Kozlova
36761cbb63 inline method: search all overriding methods
GitOrigin-RevId: 2c561e3a4a86bf6eedb69f2177ca310b2d8b1590
2020-07-24 07:51:48 +00:00
Tagir Valeev
4d21ad341f Annotate bundle methods as Nls
GitOrigin-RevId: db851b498d99f538e1f747faa4fb4d954848982f
2020-07-17 07:46:42 +00:00
Vladimir Krivosheev
d4e9b09e26 cleanup (final)
GitOrigin-RevId: 93607e195763f2acf29ee0d7a280d7e07e8d2f14
2020-06-26 12:21:17 +03:00
Vladimir Krivosheev
9e56310605 prefer JDK collections
GitOrigin-RevId: 0868bbef60ebdd27fb2d3fc87b3b41aa3b0aa986
2020-06-25 13:06:44 +03:00
Vladimir Krivosheev
df0d4e5d5e IDEA-242821 IDEA unresponsive when reloading a large project
Also do cleanup, use jdk collections in other places

GitOrigin-RevId: d4d8af4ed0044d99f87d837e8082c6fe8c2fe540
2020-06-09 13:22:51 +03:00
Peter Gromov
4de05268c4 FunctionalExpressionSearch: remove duplicates using smart pointers to avoid holding AST
GitOrigin-RevId: 87db95d3349b50479ebca32880c5c02ec4f4462e
2020-06-02 21:41:19 +03:00
Vladimir Krivosheev
f2a72b34fa do not export trove from util module
GitOrigin-RevId: 666bf5e1fc45045bb9b1c391b7ec5a2ac4b65dde
2020-05-16 16:34:43 +00:00
Tagir Valeev
ab0f6486e2 Redundant lambda removed
GitOrigin-RevId: 60376babf176e006be6eb60922575e3b894c207e
2020-04-27 07:38:08 +00:00
Alexey Kudravtsev
b290a7b216 perform find usages in the current file first, then in the target PSI elements containing directories, then in the container name-containing files, then in all the rest to improve probability of finding and showing usages faster to fix IDEA-237610 Find usages optimization: search in this file first, then farther and farther away
GitOrigin-RevId: eef2caf72f21f961939aac83819217f3397fab94
2020-04-22 11:46:32 +00:00
Vladimir Krivosheev
324e3b3d2c get rid of ModuleServiceManager
GitOrigin-RevId: 91f39625139a964430a3d14829216d3c5f49a220
2020-03-15 18:04:37 +00:00
Dmitry.Krasilschikov
a47b8f5a72 Bundle API: rename lazyMessage() to messagePointer()
GitOrigin-RevId: 1b4a35db8900da03fe48d4638362e5ea36cf106b
2020-03-03 16:02:28 +00:00
nik
a77f1a6c3c [platform] move properties used in java.indexing* modules to a separate bundle (IDEA-209382)
GitOrigin-RevId: 860146aacc4e58c472763131322e4609336a573c
2020-02-14 07:51:31 +00:00
Dmitry Jemerov
1bd0ed0834 Dynamic queryExecutor EPs
GitOrigin-RevId: bde157c3f47d2084b11bd1178d62d8b9595f6a13
2020-01-29 19:34:36 +00:00
Vladimir Krivosheev
ba98224912 remove author (only some, where it is ok)
GitOrigin-RevId: 7dbab7524fe4efc5d17a04b95dee88b6f80fbe8d
2020-01-21 17:36:52 +00:00