Vladimir Dolzhenko
efd5beb49b
IJ file type optimizations based on extension
...
#KTIJ-21668
Merge-request: KT-MR-6288
Merged-by: Vladimir Dolzhenko <Vladimir.Dolzhenko@jetbrains.com >
2022-05-17 14:46:00 +00:00
Mikhail Zarechenskiy
24220cbfb5
KotlinBinaryClassCache: restore missing fixes after merge to Kotlin repo
...
- Avoid lookups in branches: https://github.com/JetBrains/intellij-community/commit/c904c56bb4ac9764935aed09e2107636e2e5bb68
- Don't fail during index of incorrect class files: https://github.com/JetBrains/intellij-community/commit/3af051e3d30e773d9dfe6cb388a42387b8636c6b
^KTIJ-21472 In Progress
Also, this commit fixes projectLeak in Intellij Aggregator _LastInSuiteTest.testProjectLeak[Java Tests / 3]
2022-05-02 12:21:43 +00:00
Ilya Kirillov
34c855b450
[decompiler] add missing cache to annotation loader
...
it was missed during moving the code from intellij repository
^KTIJ-21613 fixed
2022-04-25 10:32:02 +02:00
Dmitry Timofeev
4e784eeb33
Create INTERSECTION_TYPE stubs for definitely non-nullable types
...
^KTIJ-20802 Fixed
2022-04-05 10:48:12 +00:00
Yan Zhulanow
dd2afb558e
Port stub-relating changes from 'master' of IntelliJ
2022-03-17 17:44:55 +09:00
Yan Zhulanow
c334a44e02
Preserve synthetic enum methods in stub-based 'ClsClassImpl'
...
'ClsClassImpl' instances created by the platform contain synthetic
enum methods (added by 'ClassInnerStuffCache.calcMethods()'). Such
convention is common in IntelliJ (see KT-36095 and
'9a8b345adaded83fe13980a28db5d9f9acc7450d' in the IntelliJ repository).
This commit makes Kotlin's stub-based classes consistent with the
convention. Instead, a filter is added in place of 'ClsClassImpl' usage.
See also the following commits:
- 7c86911f44
- 43468c6d55
2022-03-14 17:53:55 +09:00
Yan Zhulanow
fa4dadf9b7
Update KotlinClassInnerStuffCache implementation
...
'KotlinClassInnerStuffCache' was copy-pasted from the platform's
'ClassInnerStuffCache' several years ago. After J2K and other changes,
it became quite dirty.
Besides cleaning things up, enum synthetic method handling have
significantly improved. Before, such methods were handled only in
'processDeclarationsInEnum', and 'getMethods()' didn't return them.
This led to inconsistent behavior and was reason for providing special
ad-hoc support in '1b6ded600518176b21cc308ed3e032ef8d04cc90'.
2022-03-14 17:53:55 +09:00
Yan Zhulanow
955d0841bd
Remove unused modification tracker in KotlinClassInnerStuffCache
...
'dropCaches()' is not used anywhere both in the compiler and in the IDE.
2022-03-14 17:53:55 +09:00
Ilya Muradyan
9637b6b848
REPL: Fix REPL scripts metadata to be correctly recognized by class file decompiler
2022-01-27 02:23:27 +03:00
Evgeniy.Zhelenskiy
e97ca2ada4
[Psi2Ir, Fir2Ir] Generate toString, hashCode, equals methods for MF VC
2022-01-14 13:51:57 +00:00
Ilya Kirillov
27ab406445
Analysis: restore fix of ^KTIJ-16968 after move to PSI builder to kotlin repository
2021-12-30 13:44:30 +03:00
Ilya Kirillov
4d7af4beae
Analysis: fix imports and module names
2021-12-27 16:23:46 +03:00
Ilya Kirillov
40fdb26569
Analysis LC: introduce Symbol LC tests
2021-12-27 16:23:18 +03:00
Ilya Kirillov
1bba3b2256
Migrate decompiled light classes factories from IJ
2021-12-27 16:23:17 +03:00
Ilya Kirillov
aa87524513
Migrate stub and psi builders by classfiles form IJ repository
2021-12-27 16:23:16 +03:00
Ilya Kirillov
0efc819e48
Fix invalid repeatable annotations loading in sutb builder
2021-12-27 16:23:16 +03:00
Ilya Kirillov
d2832697d9
Move stub building test generation to analysis generator
2021-12-27 16:23:15 +03:00
Ilya Kirillov
1e9764c639
Move stub building from psi module to analysis module
2021-12-27 16:23:14 +03:00
Ilya Kirillov
b563824b35
Migrate LightMemberOriginForCompiledElement from IJ repository
2021-12-27 16:23:13 +03:00
Ilya Kirillov
764ad8b9fa
Move light classes for decompiled declarations from IJ repository
2021-12-27 16:23:12 +03:00
Ilya Kirillov
fceb46924e
Move decompiler from IJ repository
...
This commit just moves files and fixes imports
2021-12-27 16:23:11 +03:00