Commit Graph

1042 Commits

Author SHA1 Message Date
Dmitriy Novozhilov 8b42638afa [Plugins] Introduce new API for registering compiler plugins
Original `ComponentRegistrar` exposes Project to its registration method,
  so plugins should manually register extensions to it. To prepare for
  possible unbound compiler from Project API in future new  `K2ComponentRegistrar`
  introduced which provides registration method without Project at all
2022-06-29 11:59:58 +00:00
Ilya Chernikov bb996c1b27 Switch kotlin version to 1.8
with appropriate fixes in testdata, tests and other
places.
2022-06-29 10:20:30 +02:00
Ilmir Usmanov 09c9641e23 FE: Use safe call when searching for suspend modifier
The modifier does not exist, when the parameter type is typealias.

 #KT-35187 Fixed
2022-06-29 06:12:44 +02:00
Dmitry Gridin dd824aacb6 Revert "Revert "[light classes] drop old light classes and backend: iteration #2""
This reverts commit 43b4df74bc.
2022-06-28 17:57:30 +02:00
Dmitry Gridin f10c5c28a5 Revert "Revert "[light classes] drop old light classes and backend: iteration #1""
This reverts commit 57de064251.
2022-06-28 17:57:29 +02:00
Pavel Mikhailovskii c3c09aa95a KT-4107 Data objects 2022-06-28 16:58:20 +02:00
Dmitry Gridin 57de064251 Revert "[light classes] drop old light classes and backend: iteration #1"
This reverts commit 3cb2df9360.
2022-06-28 13:52:11 +02:00
Dmitry Gridin 43b4df74bc Revert "[light classes] drop old light classes and backend: iteration #2"
This reverts commit 97ce502cbe.
2022-06-28 13:52:10 +02:00
Dmitry Gridin 97ce502cbe [light classes] drop old light classes and backend: iteration #2
drop javaFileStub and fix tests

^KT-48773
2022-06-28 11:44:39 +00:00
Dmitry Gridin 3cb2df9360 [light classes] drop old light classes and backend: iteration #1
drop clsDelegate and related

^KT-48773
2022-06-28 11:44:38 +00:00
Jinseong Jeon 20d618c0a8 AA: populate CorePackageIndex
so that annotations in package-info.java can be propagated properly
2022-06-28 11:44:41 +02:00
Stanislav Erokhin 62d7094ac5 Remove KtAnalysisSessionFe10BindingHolder
I've removed its usage from Fe10Binding module in the IDE repo
2022-06-27 19:32:45 +00:00
Stanislav Erokhin 66851c7afd [Analysis API] Add KtReceiverParameterSymbol#correspondingSymbol 2022-06-27 19:32:44 +00:00
Dmitriy Novozhilov fcc5b804a8 [FIR] Add forgotten resolution of annotations on get class calls 2022-06-27 08:11:31 +00:00
Ilya Kirillov 186beddf5c [Analysis API FIR] fix member scope for enum entries 2022-06-24 15:36:32 +00:00
Ilya Kirillov 89ff1f0c0b [Analysis API FIR] fix member scope for enum entries without body 2022-06-24 15:36:32 +00:00
Ilya Kirillov 872b5a6a33 [Analysis API FIR] collect scope sequences more lazily 2022-06-24 11:11:25 +02:00
Ilya Kirillov 693b6f04e4 [Analysis API] cleanup, remove repetitive logic 2022-06-24 11:11:24 +02:00
Ilya Kirillov 567cda9767 [Analysis API] cleanup the code 2022-06-24 11:11:24 +02:00
Ilya Kirillov 47c51b82b6 [Analysis API] do not rethrow PCE from FirCache
^KT-51656
2022-06-24 10:50:31 +02:00
Ilya Kirillov 154a54a1e7 [Analysis API] add more info to the error message of KtCallResolverMixIn 2022-06-24 10:50:31 +02:00
Ilya Kirillov 86605c066b [Analysis API] move PSI utils to internal-utils module 2022-06-24 10:41:05 +02:00
Ilya Kirillov bb7b34b3a1 [Analysis API] introduce KtSymbolOrigin.SUBSTITUTION_OVERRIDE
^KT-52043
2022-06-24 10:41:05 +02:00
Ilya Kirillov 0ba06e0807 [LL API] remove unused executeOrReturnDefaultValueOnPCE 2022-06-24 10:41:05 +02:00
Ilya Kirillov 706d20a523 [LL API] use FirCacheFactory in LLFirProviderHelper 2022-06-24 10:41:04 +02:00
Denis.Zharkov d8dad02f08 FIR: Fix internal error on SAM with not-computed return type
^KT-52691 Fixed
2022-06-24 08:33:22 +00:00
Stanislav Erokhin 2234813363 [Analysis API] Add KtCallableMemberCall#typeArgumentsMapping 2022-06-23 07:50:21 +00:00
Stanislav Erokhin 8d8fc6e291 [Analysis API] Add type to KtReceiverValue
Maybe in the future we could remove type from the
KtImplicitReceiverValue, because it has ktSymbol, and in theory
that should be enough to create corresponding KtType.
Unfortunately that is not the case for KtClassOrObjectSymbol --
it doesn't have the API for "default" type creation currently.

Regarding code in KtFirCallResolver.kt -- it seems like code there
needs some love in the future. Psi created via custom code there,
because for call x() FIR has receiver x with psi = null
2022-06-23 07:50:21 +00:00
Kristoffer Andersen 3af0e57406 [FIR-IDE] Add DestructuringDeclarationEntry to SymbolProvider 2022-06-22 21:20:54 +02:00
Jinseong Jeon b6371a5b9a AA/FIR: differentiate dynamic type rendering 2022-06-22 20:14:39 +02:00
Jinseong Jeon 2d52c59bc7 AA: introduce KtDynamicType 2022-06-22 20:14:39 +02:00
Ilya Kirillov ed97e73129 [Analysis API FIR] fix invalid fallback for enum classes modality 2022-06-22 09:31:50 +02:00
Ilya Kirillov d716c68f0e [Analysis API] cleanup code 2022-06-22 09:31:49 +02:00
Ilya Kirillov 37b0c20879 [Analysis API] improve KDoc for scopes 2022-06-22 09:31:49 +02:00
Ilya Kirillov d8b88e9b69 [Analysis API] add testcases, add comments to tests 2022-06-22 09:31:48 +02:00
Ilya Kirillov 3ea2232591 [Analysis API] add KDocs for KtTypeScopeProvider 2022-06-22 09:31:48 +02:00
Ilya Kirillov d5113892df [Analysis API FE10] fix CallableId for synthetic java property descriptors 2022-06-22 09:31:48 +02:00
Ilya Kirillov 36f370f501 [Analysis API] add tests for KtTypeScope 2022-06-22 09:31:47 +02:00
Ilya Kirillov b9907963fe [Analysis API] add tests for KtSubstitutor 2022-06-22 09:31:47 +02:00
Ilya Kirillov f4d47cfe59 [Analysis API fir] remove now unneeded ReadOnlyWeakRef 2022-06-22 09:31:46 +02:00
Ilya Kirillov f966959615 [Analysis API] disable not passing new Analysis API tests for FE10 2022-06-22 09:31:46 +02:00
Ilya Kirillov 2c1074ac37 [Analysis API] actualize testdata 2022-06-22 09:31:45 +02:00
Ilya Kirillov ffdfa05015 [Analysis API] use existing test utilities for rendering 2022-06-22 09:31:45 +02:00
Ilya Kirillov f09459d172 [Analysis API] add KDocs to the substitution-related functionality 2022-06-22 09:31:44 +02:00
Ilya Kirillov 8ba7d41e00 [Analysis API] fix typo in class name 2022-06-22 09:31:44 +02:00
Ilya Kirillov dafb132a17 [Analysis API] add few tests which checks contracts of signature substitutions 2022-06-22 09:31:43 +02:00
Ilya Kirillov 3525e42f11 [Analysis API] introduce substitutor builder 2022-06-22 09:31:43 +02:00
Ilya Kirillov c95ac9f845 [Analysis API] add some basic tests for symbol substitution 2022-06-22 09:31:42 +02:00
Ilya Kirillov 7b1765cc8b [Analysis API] introduce base KtTypeScope -> KtScope converter 2022-06-22 09:31:42 +02:00
Ilya Kirillov c52d33d215 [analysis api] add additional information to the KtCallableSignature 2022-06-22 09:31:41 +02:00