Yan Zhulanow
e943ee1e33
[FIR IDE] Fix callableIdIfNonLocal in AAPI/FE10
...
Before, implementations of 'callableIdIfNonLocal' in Fe10KtSymbols
returned CallableIds even for local declarations. This commit fixes this
behavior.
This commit fixes KtFe10SymbolByPsiTestGenerated.testLocalDeclarations().
2021-11-12 20:09:48 +09:00
Yan Zhulanow
f7b4fa64ea
[FIR IDE] Fix Fe10PsiKtEnumEntrySymbol.annotatedType in AAPI/FE10
...
'annotatedType' should return type of the enum itself, not of its entry.
This commit fixes KtFe10SymbolByPsiTestGenerated.testEnum().
2021-11-12 20:09:48 +09:00
Yan Zhulanow
47b5474955
[FIR IDE] Decouple KtFe10AnalysisSession and symbols
2021-11-12 20:09:47 +09:00
Yan Zhulanow
b075fe8741
[FIR IDE] Fix CliFe10AnalysisFacade, so it can be used as a Project component
2021-11-12 20:09:47 +09:00
Yan Zhulanow
0388f1e5ca
[FIR IDE] Refactoring, accept only KtElement sources in KtFe10AnalysisSession
2021-11-12 20:09:47 +09:00
Yan Zhulanow
0382323dad
[FIR IDE] Refactoring, make KtFe10AnalysisSession final
2021-11-12 20:09:47 +09:00
Yan Zhulanow
b59067ca45
[FIR IDE] Extract CLI parts of KtSymbol-aware KtReferences
2021-11-12 20:09:46 +09:00
Jinseong Jeon
4a16027873
FIR IDE: find source of deserialized top-level properties
2021-11-12 12:11:06 +03:00
Jinseong Jeon
cf886c5975
FIR LL: fix searching logic for enum entry
...
KtEnumEntry, a subtype of KtClass, has been handled by
findNonLocalClass. Since KtEnumEntry doesn't have class id, that util
always throws an error while retrieving class id.
Instead, we should use containing class (i.e., enum class) id.
Also, once the enum class is resolved, we should search for matching
enum entry inside the enum class.
2021-11-12 12:11:06 +03:00
Jinseong Jeon
140b8d6ddf
FIR LL: remove redundant test data for library module resolve
...
There are in plugins/kotlin/fir-low-level-api-ide-impl in intellij repo.
2021-11-12 12:11:05 +03:00
Denis.Zharkov
6e15ee8fea
FIR: Refine callable reference resolution in assignment position
...
synthetic_select<() -> T>(::foo) form allows to select better candidate
than synthetic_select(::foo) with expect type `() -> T`
2021-11-10 22:00:01 +03:00
Denis.Zharkov
65d7da122f
FIR: Fix invalid INITIALIZER_TYPE_MISMATCH for suspend lambda
2021-11-10 22:00:01 +03:00
Denis.Zharkov
994040c91c
FIR: Support invoke convention on super-qualified calls
2021-11-10 22:00:00 +03:00
Ilya Kirillov
0c7728f64a
Analysis API: fix PsiType creation for type parameter type with flexible upper bound
2021-11-10 18:49:43 +01:00
Dmitriy Novozhilov
ec079a2663
[Build] Add runtime dependency on descriptors.runtime to tests for low level api
...
This is needed to keep ability to run those tests using JPS
2021-11-09 20:06:11 +03:00
Jinseong Jeon
08e181a543
FIR IDE: add tests about types of array/list and their element
2021-11-09 09:25:45 +01:00
Ivan Kylchik
37f02390ec
[TESTS] Extract common backend directives into ConfigurationDirectives
2021-11-08 23:50:33 +03:00
Jinseong Jeon
4eec381d1b
FIR IDE/LC: introduce/use KtTypeMappingMode
2021-11-08 20:12:17 +01:00
Jinseong Jeon
0da9ef873a
FIR LC: use optimal type mapping mode for return type
2021-11-08 20:12:17 +01:00
Jinseong Jeon
d3c34fa200
FIR LC: use optimal type mapping mode for value parameter
2021-11-08 20:12:17 +01:00
Jinseong Jeon
6d150fb7a5
FIR IDE: add APIs about FunctionClassKind
2021-11-08 20:12:17 +01:00
Jinseong Jeon
d029e84b96
FIR LC: use proper use-site target for accessor's JVM name
2021-11-08 20:12:16 +01:00
Ilya Kirillov
348403b1f3
FIR: do not inherit external modifier from super declaration
2021-11-08 19:01:35 +01:00
Ilya Kirillov
711b882e71
Analysis API: get rid of KtImportingScope as public API
2021-11-05 15:47:49 +01:00
Ilya Kirillov
d9fcea9451
Analysis API: simplify fir scope hierarchy
2021-11-05 15:46:10 +01:00
Ilya Kirillov
6453f2bdbf
Analysis API: simplify scope hierarchy
2021-11-05 15:46:09 +01:00
Ilya Kirillov
0dca176e28
FIR LC: make fir LC utils internal
2021-11-05 15:46:09 +01:00
Ilya Kirillov
dd9a96a12f
FIR LC: fix light facade caching
2021-11-05 15:46:07 +01:00
Tianyu Geng
f217bb94de
Use more consistent names for inheritors of BooleanIsMissing
2021-11-04 23:04:35 +01:00
Tianyu Geng
2c2851af6e
Analysis API: add test covering get missing when branches
...
Also fix FIR implementation to generate boolean branches in the same
order as FE1.0.
2021-11-04 23:04:35 +01:00
Tianyu Geng
ae50d52131
FIR IDE: add validity token to data classes related to smartcast API
...
Also move KtImplicitReceiverSmartCast closer to where it's used.
2021-11-04 16:00:38 +01:00
Tianyu Geng
7de0937031
FIR IDE: get unstable smartcast from FE1.0-based analysis API
...
Note that the current FE1.0 implementation still has some limitations
1. only references used as receiver are being considered for smartcast.
2. Somehow the smartcast information is not retained if the for generic
typed receivers. See multiSmartcastAsReceiver_stable.descriptors.txt
2021-11-04 16:00:37 +01:00
Tianyu Geng
197079c85c
FIR IDE: make smartcast API return unstable smartcasts
2021-11-04 16:00:37 +01:00
Ilya Kirillov
6462642988
Analysis API: fix type rendering for ConeDefinitelyNotNullType
2021-11-04 12:05:05 +01:00
Ilya Kirillov
da88ddfc71
FIR IDE: always approximate non-denotable types for creating PsiType
2021-11-04 12:05:04 +01:00
Ilya Kirillov
bec9cec31c
LL API: correctly resolve FirSyntheticPropertyAccessor
2021-11-04 12:05:04 +01:00
Ilya Kirillov
79f30755a5
FIR LC: do not create light classes for non-source declarations
2021-11-04 12:05:03 +01:00
Ilya Kirillov
55e6df6920
Analysis API: do not consider ValidityToken when comparing symbols and types
...
Symbols with the same FirDeclaration may come from the different analysis sessions
2021-11-04 12:05:02 +01:00
Ilya Kirillov
d63c136854
Analysis API: recreate analysis session when not found by resolve state
2021-11-04 12:04:54 +01:00
Denis.Zharkov
2e37ec6f0c
FIR: Fix false-positive ILLEGAL_RESTRICTED_SUSPENDING_FUNCTION_CALL on invokeExtension calls
2021-11-02 19:08:27 +03:00
Denis.Zharkov
37b5237e97
FIR: Fix type alias case for callable reference resolution type
2021-11-02 19:08:26 +03:00
Jinseong Jeon
c3c79b874d
FIR IDE: make constant evaluator robust to arithmetic exception
2021-11-01 22:50:47 +01:00
Jinseong Jeon
5aa8e2d0d1
FIR LC: fix nullable annotation on return type of suspend function
2021-11-01 19:19:39 +01:00
Jinseong Jeon
5880d80d26
FIR LC: add support for inline class
2021-11-01 19:17:26 +01:00
Jinseong Jeon
0e7d1b3945
FIR LC: refactor creation of property accessors
2021-11-01 19:17:26 +01:00
Victor Petukhov
c8dea3db35
Add test for using underscored type in different positions
2021-11-01 13:03:40 +03:00
Victor Petukhov
5508d40371
Put using underscored type arguments under a feature
2021-11-01 12:25:45 +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
zhelenskiy
ea10b4a781
Synchronizing by values and primitives is forbidden
...
Signed-off-by: zhelenskiy <zhelenskiy2000@yandex.ru >
2021-10-29 18:50:30 +02:00