Commit Graph

420 Commits

Author SHA1 Message Date
Victor Petukhov 6e191147b9 [FE 1.0] Resolve setters through the new type inference infra
^KT-48961 In progress
2022-07-22 16:03:50 +00:00
Ilya Kirillov a6b6c79dc2 [PSI] do not throw exception on incorrect expression in KtPsiFactory.createExpressionIfPossible 2022-07-06 23:03:20 +02:00
Bart van Helvert 7bef560b6b KTIJ-21986 Don't log non-kotlin code fragment context when it's null
This warning shouldn't be logged when the context is null.
2022-07-01 08:15:58 +00:00
Pavel Mikhailovskii c3c09aa95a KT-4107 Data objects 2022-06-28 16:58:20 +02:00
Mikhail Zarechenskiy 47beef16f3 Increase binary stub version for 1.7.0
New stub version forces reindex & reimport for JPS-based projects,
making their compiler plugin libs consisten with the bundled JPS
compiler

 ^KTIJ-21982
2022-06-24 15:05:18 +00:00
Ilya Kirillov ba797fa1b4 [stubs] fix cls stubs for declarations with context receivers
^KTIJ-21243 fixed
2022-06-20 19:10:36 +02:00
Yan Zhulanow 191bac38a3 Fix 'PsiElement.getReference()' contract for Kotlin PSI (KT-52822)
As stated in JavaDoc for 'PsiElement' (formatting is slightly changed):

Returns the reference from this PSI element to another PSI element
(or elements), if one exists. If the element has multiple associated
references, returns the first associated reference.
2022-06-16 18:31:49 +00:00
Denis.Zharkov 9caa60d389 Revert "KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing"
This reverts commit ba5c85d6

^KT-52684 Related
2022-06-09 15:44:36 +00:00
Victor Petukhov 0b25ce4de9 [FE] Support resolve of until operator to rangeUntil
^KT-52420 Fixed
2022-05-31 08:42:55 +00:00
Victor Petukhov 19136019e4 [Parser] Support of parsing until operator
^KT-52419 Fixed
2022-05-31 08:42:54 +00:00
Alexey Belkov 5f3e5f80d4 areParenthesesUseless: fix various false positives
The tests for this change will be committed to intellij repository
when it switches to the next Kotlin compiler containing the fix.

^KTIJ-21665
^KT-47159
2022-05-24 15:09:12 +00:00
Iven Krall ba5c85d6f2 KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing 2022-05-18 17:23:40 +00:00
Iven Krall 514fce427b KT-51714: Parsing fails for context receivers with incomplete label
^KT-51576 In Progress

No test has been added since it would make indexing of Kotlin project failing
Will add it once bootstrap is advanced
2022-05-17 15:27:28 +00:00
Victor Petukhov 2cfba51a29 [Compiler PSI] Make getContextReceivers default to preserve compatibility
^KT-51747 Fixed
2022-04-21 13:41:30 +00:00
Denis.Zharkov b8ea48fdc2 Fix exception happening while parsing an incorrect file
^KTIJ-21546 Fixed
2022-04-15 09:10:09 +00:00
Denis.Zharkov 4379460177 Fix AST/PSI structure for context receivers in function types
Having CONTEXT_RECEIVER_LIST inside FUNCTION_TYPE_RECEIVER looks a bit hacky
2022-04-06 16:05:24 +00:00
Mads Ager a398f7d6cb Rename kt-reference module to kt-references. 2022-02-07 15:01:24 +01:00
Mads Ager 6f0bb0eda5 Add analysis:kt-reference module and move KtReferences there. 2022-02-07 15:01:23 +01:00
Jinseong Jeon 08d062dcf9 Remove unused/deprecated ReadWriteAccess util
The usage in KtFirCallResolver for resolving compound accessor calls is
fully rewritten recently, and this util is no longer used.

This is partial revert of cd4a08cb18
2022-01-10 19:54:25 +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 1e9764c639 Move stub building from psi module to analysis module 2021-12-27 16:23:14 +03:00
Ilya Kirillov cd3905e400 Fix dependencies to intellij modules after gradle dependency DSL update 2021-12-27 16:23:13 +03:00
Ilya Kirillov 3779acbc3d Add testdata from intellij for cls stub building tests and generate tests 2021-12-27 16:23:11 +03:00
Ilya Kirillov 02d68d7b12 Introduce cls stub building tests (mostly migrated from intellij) 2021-12-27 16:23:10 +03:00
Ilya Kirillov 127dc7670e Move IDEKotlinBinaryClassCache from intellij 2021-12-27 16:23:10 +03:00
Ilya Kirillov b222bf88a0 Move DirectoryBasedClassFinder and DirectoryBasedDataFinder from intellij 2021-12-27 16:23:10 +03:00
Ilya Kirillov dbb3ebb8df Implement AnnotationLoaderForClassFileStubBuilder 2021-12-27 16:23:09 +03:00
Ilya Kirillov b9b0bb309d Move KotlinClsStubBuilder from intellij repository
This commit is just move, without any modifications
2021-12-27 16:23:09 +03:00
Ilya Kirillov 3686fc109d Extract AnnotationLoader from AnnotationAndConstantLoader, so it can be used without FE1.0 2021-12-27 16:23:07 +03:00
Ilya Kirillov 49e9c47071 Move DynamicTypeDeserializer.id from IR module to common module
So, it can be used from cls-psi-stub-builder module
2021-12-27 16:23:06 +03:00
Ilya Kirillov 53346e0aa6 Merge KotlinFileStubImpl and KotlinFileStubForIde into KotlinFileStubImpl
as the only difference is additional fields in KotlinFileStubForIde
2021-12-27 16:23:05 +03:00
Ilya Kirillov a9d7e5db72 Move stub builder stuff from intellij
This is mechanical moving without fixing compilation errors,
just packages are changes
2021-12-27 16:21:51 +03:00
Vyacheslav Gerasimov f7a9065b75 Build: Use intellij maven repo instead of downloaded IDEA
#KTI-82
2021-12-16 21:48:23 +03:00
Vyacheslav Gerasimov bc2f0936bd Build: Rename commonDep -> commonDependency 2021-12-16 21:48:19 +03:00
Anastasiya Shadrina 4d3035e2f7 [Parser] Do not support local contextual declarations 2021-12-03 20:22:17 +03:00
Anastasiya Shadrina 7ab9b68ad5 [FE] Move type-related checks to TypeResolver 2021-12-02 20:24:41 +03:00
Anastasiya Shadrina 9896cbd2b8 [FE] Add visitContextReceiverList to KtVisitorVoid 2021-12-02 20:24:40 +03:00
Anastasiya Shadrina f75571b97a [FE] Minor: do not try to check stub is not null 2021-12-02 20:24:38 +03:00
Anastasiya Shadrina 910660a083 [FE] Add language feature for context receivers 2021-12-02 20:24:16 +03:00
Anastasiya Shadrina e3f987459c [PSI, FE] Support functional types 2021-12-02 20:24:11 +03:00
Anastasiya Shadrina af78ec7371 [PSI, FE] Review fixes 2021-12-02 20:24:04 +03:00
Anastasiya Shadrina 875f4ea31c [FE] Support local contextual declarations 2021-12-02 20:23:54 +03:00
Anastasiya Shadrina 1a0aab4a44 [FE] Inline classes cannot have context receivers 2021-12-02 20:23:52 +03:00
Anastasiya Shadrina 5e426d5c16 [Parser] Continue parsing if context receiver is not parsed correctly 2021-12-02 20:23:48 +03:00
Anastasiya Shadrina 08e68e1887 [PSI] Fix parse tree node 2021-12-02 20:23:42 +03:00
Anastasiya Shadrina 1bcaeabd84 [PSI, FE, PSI2IR] Use labels for referencing specific receiver 2021-12-02 20:23:40 +03:00
Anastasiya Shadrina f4ddf66ac4 [FE] Support context receivers on classes 2021-12-02 20:23:25 +03:00
Anastasiya Shadrina 7de8380ddf [FE] Add context receivers getter to KtCallableDeclaration interface 2021-12-02 20:23:16 +03:00
Anastasiya Shadrina d1fdc4d787 [PSI] Introduce "context" soft keyword and parse context receivers 2021-12-02 20:23:11 +03:00
Mikhail Glukhikh cebe25ff39 FE: don't create KtFile stubs on virtual files without ids
This commit is kinda revert of the change in platform 203:
https://github.com/JetBrains/intellij-community/commit/5d91f7bf2e5718d715c0d90ed1a212ea845fb2a3

#KT-49833 Fixed
2021-11-29 18:42:23 +03:00