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
Victor Petukhov
42805db989
[FE 1.0] Take into account import aliases during hidden member resolution
2021-11-22 10:43:43 +03:00
Roman Golyshev
79f9bd9c29
Add javadoc to KtAnnotation
2021-11-16 21:34:57 +03:00
Dmitry Gridin
5ecd2aa191
[psi] KtNamedDeclarationStub: fix useScope for private class
...
The `return` was missed, so the private class did not optimize scope
^KTIJ-20069
2021-11-08 02:30:54 +00:00
Victor Petukhov
4118f3146b
Use proper isPlaceholder check for psi type references
2021-11-01 13:03:41 +03:00
Victor Petukhov
248c9550cd
Support type annotations resolution on an underscored type argument
2021-11-01 12:25:10 +03:00
Victor Petukhov
b69fb6779f
Basic support of partially specified type arguments though a new underscore operator for type arguments
...
^KT-13394
2021-11-01 12:25:07 +03:00
Ilya Chernikov
1ce4075112
Prepare CLI reporting infrastructure for non-PSI diagnostics
2021-10-27 22:17:40 +02:00
Dmitriy Novozhilov
94664694df
[FIR] Prohibit confusing syntax inside when branches
...
^KT-48385
2021-10-21 19:39:46 +03:00
Yan Zhulanow
516dd825c2
[FIR IDE] Initial descriptor-based implementation of the Analysis API
2021-10-20 19:41:24 +03:00
Mikhail Zarechenskiy
8e0e2fe52c
Increase stub versions for the major version 1.6.0
...
^KT-49190 Fixed
2021-10-18 14:48:35 +03:00
Mikhail Zarechenskiy
472eceb13c
Mark KtDestructuringDeclarationReference as multi reference entity
...
This change fixes tests related to components:
- org.jetbrains.kotlin.idea.codeInsight.InsertImportOnPasteTestGenerated$Copy.testMultiDeclaration
- org.jetbrains.kotlin.idea.codeInsight.InsertImportOnPasteTestGenerated$Cut.testMultiDeclaration
Initially, it was marked as multi reference in https://github.com/JetBrains/intellij-community/blob/388ff78e61a7e0599c85b07766a03d956d7583da/plugins/kotlin/frontend-independent/src/org/jetbrains/kotlin/idea/references/KtDestructuringDeclarationReference.kt#L14
But then this change was lost during commonization of this
implementation with FIR
^KTIJ-19815 Fixed
2021-10-04 18:17:18 +03:00
Ilya Kirillov
c8c1ee2b5a
Fix usage of readWriteAccess without resolve
...
^KTIJ-19777 fixed
2021-10-01 16:48:35 +02:00
Victor Petukhov
ee728b6902
Use the new type inference for top-level callable reference resolution
...
^KT-47797 Fixed
^KT-47987 Fixed
^KT-45034 Fixed
^KT-48446 Fixed
^KT-13934 Fixed
2021-09-27 16:12:27 +03:00
Vyacheslav Gerasimov
ab146bd6d4
Build: Fix deprecated Gradle configurations usages
...
for migration to Gradle 7+ #KTI-559
2021-09-26 18:28:44 +03:00
Roman Golyshev
57608d7eeb
Use correct elementType in KotlinBackingFieldStubImpl constructor
2021-09-13 21:58:00 +03:00
Nikolay Lunyak
6b532ccd0d
[FIR] Allow lateinit FirBackingField's
2021-09-11 22:05:41 +03:00
Nikolay Lunyak
56b2a984ce
[FIR] Quick fix FirModifierChecker
2021-09-11 22:05:35 +03:00
Nikolay Lunyak
37f832bc2f
[FIR] Add KtBackingField (see: KT-CR-4119, KT-14663)
2021-09-11 22:05:26 +03:00
Dmitriy Novozhilov
00c60bf569
[FE] Remove dependecy on :core:descriptors from :compiler:psi
2021-09-09 17:20:24 +03:00
Jinseong Jeon
8e242655f9
FIR IDE: resolve call to property accessors
2021-09-09 16:07:09 +02:00
Jinseong Jeon
cd4a08cb18
Migrate ReadWriteAccess and checker logic (from frontend-independent)
2021-09-09 16:07:09 +02:00
Denis.Zharkov
c1b5d5551f
Drop support for T!! syntactic structure
...
^KT-26245 In Progress
2021-08-31 15:41:13 +03:00
Denis.Zharkov
302eacbf59
Support new form of definitely non-nullable types: T & Any
...
^KT-26245 In Progress
2021-08-31 15:41:11 +03:00
Denis.Zharkov
cdd8d1c163
Add AND (&) token
2021-08-31 15:41:09 +03:00
Ivan Kochurkin
301f446433
Restore KtModifierKeywordToken instead of String in modifier diagnostics
...
Remove KeywordType
2021-08-18 00:45:57 +03:00
Ilya Kirillov
2e3b576342
FIR IDE: change destructing declaration reference behaviour to match FE1.0 plugin behaviour
2021-08-11 18:09:05 +02:00
Tianyu Geng
684ef871ee
FIR: unify common special names scattered around the code base
2021-08-06 22:57:17 +03:00
Igor Yakovlev
a0418c3146
[STUBS] Fix invalid classId calculation for KtObjectLiteralExpression
2021-07-26 23:08:53 +02:00
Nikolay Krasko
1b3046a61b
Cleanup 202 bunch files
...
Leave 202 in .bunch file to give some time for updating build server
2021-07-23 16:58:26 +03:00
Dmitriy Novozhilov
2c1ada131d
[FIR] Don't generate implicit primary constructor for expect classes
2021-07-20 10:33:42 +03:00
Jinseong Jeon
9ec4d19a3f
FIR IDE: avoid finding symbol for function type parameter
2021-07-15 18:29:33 +02:00
Dmitriy Novozhilov
785e2f862c
[PSI] Ignore when failed to get file text
...
This is change from 36ff952 which was forgotten when applying 203 bunch
2021-07-13 10:34:59 +03:00
Dmitriy Novozhilov
ddc3ef1121
Fix all illegal usages of safeAs function
...
Call of `safeAs` without specifying explicit type argument is hardly
readable and may leads to hardly detectable errors
2021-07-12 10:11:36 +03:00
Alexander Udalov
68432f0c20
Fix deprecation/unchecked warnings after update to 203
2021-07-09 14:24:07 +02:00
Dmitriy Novozhilov
80971d7b8b
~~~~ switch 203 ~~~~
2021-07-08 13:29:18 +03:00
Nikita Bobko
339231b05e
Move KtFunctionLiteral.findLabelAndCall from kotlin-ide.frontend-independent to compiler.psi
...
I want to be able to use this function in `:kotlin-scripting-ide-common` & `frontend-independent`
This commit also allows to remove copy-pasted `findLabelAndCall` in `scripting-ide-services` module
2021-07-07 16:51:44 +02:00
Dmitriy Novozhilov
3f5e6a79c7
Replace all throw error(...) with just error(...)
...
`throw` is not needed in this case, because `error(...)` already
raises exception (so `throw` is unreachable). Also after previous
commit compiler reports `UNREACHABLE_CODE` warning on such `throw`
2021-07-02 17:55:21 +03:00
Dmitry Gridin
274bae1d05
KtArrayAccessReference: remove redundant functions
2021-06-29 10:04:27 +07:00
Denis.Zharkov
0ec693db89
Fix parsing regression related to T!!
...
^KT-47445 Fixed
2021-06-28 21:48:13 +03:00
Ilya Kirillov
28dbfeb845
Move KtReference interface to psi module
2021-06-20 22:07:15 +02:00
Vladimir Dolzhenko
2c8d583d8b
Added ad-hoc KtValueArgument.stringTemplateExpression
...
Use only stub stringTemplateExpression if it is present and don't use ast nodes as it could be unbounded
#KT-47034 Fixed
2021-06-10 21:14:32 +00:00
Ilya Kirillov
1e1ce3067f
FIR IDE: implement basic classifier name contributor
2021-06-03 19:39:00 +03:00
Alexander Udalov
81ce1da352
Move PsiSourceElement to psi
2021-06-01 20:28:23 +02:00
Tianyu Geng
61475c48e2
FIR: fix VALUE_ARGUMENTS position strategy
2021-05-26 14:46:18 +03:00
Tianyu Geng
e1b542314a
FIR IDE: quickfix for WrapWithSafeLetCall
...
There is some behavior change regarding the new WrapWithSafeLetCall quickfix
1. it now works correctly on binary expressions by wrapping it with `()`
2. it now looks for a nullable position upward and do the modification there,
if possible. For example, consider the following code
```
fun bar(s: String): String = s
fun test(s: String?) {
bar(bar(bar(<caret>s)))
}
```
After applying this fix, FE1.0 yields
```
bar(bar(s?.let { bar(it) }))
```
while the new implementation yields
```
s?.let { bar(bar(bar(it))) }
```
This behavior aligns with FE1.0 if `bar` accepts nullable values.
2021-05-20 20:33:00 +02:00