Commit Graph

67 Commits

Author SHA1 Message Date
Ilya Kirillov 1d1f5ace8f Analysis API: rename KtCallableSymbol.type -> returnType 2021-11-22 22:47:01 +01:00
Ilya Kirillov d0318f1026 Analysis API: add test for file annotations 2021-11-22 22:47:00 +01:00
Ilya Kirillov ba918d45a2 Analysis API: introduce KtInitializerValue for initializer of KtPropertySymbol 2021-11-22 22:46:59 +01:00
Ilya Kirillov 02adb1924b Analysis API: add tests to check annotations on declarations 2021-11-22 22:46:58 +01:00
Ilya Kirillov a084ad59de Analysis API: add test for annotations on types 2021-11-22 22:46:56 +01:00
Ilya Kirillov 193df3e3c4 Analysis API: fix annotation rendering for types 2021-11-22 22:46:55 +01:00
Ilya Kirillov a5a5ff39d6 Analysis API: get rid of KtTypeAndAnnotations & add annotations for every type 2021-11-22 22:46:53 +01:00
Tianyu Geng d0d1c8c4b9 Analysis API: add test for getReturnExpressionTargetSymbol
Also fix FIR and FE1.0 implementations.
2021-11-19 23:29:17 +01:00
Jinseong Jeon 205866a516 FIR IDE: add API to get KtType from KtTypeParameter 2021-11-18 17:33:17 +01:00
Dmitriy Novozhilov 93378b1a04 [FE 1.0] Resolve private constructors of sealed classes same as for regular classes
^KT-44866
^KT-49729
2021-11-18 13:54:05 +03:00
Ilya Kirillov 7f6afcabf1 Analysis API: regenerate tests 2021-11-17 20:55:11 +01:00
Ilya Kirillov 7cb1f19a79 Analysis API: move component test classes to corresponding dirs 2021-11-17 20:55:10 +01:00
Jiaxiang Chen f8262a2549 implement KtSymbolWithTypeParameters interface for KtPropertySymbol 2021-11-17 18:22:34 +01:00
Roman Golyshev 13e27a3e06 [FIR IDE] Get rid of KtPossiblyMemberSymbol::dispatchType 2021-11-15 14:36:35 +03:00
Roman Golyshev 4e1e1570df [FIR IDE] Add getDispatchReceiverType function and use
This function is under a heavy deprecation and should not be used,
since it will most probably be removed in the future
2021-11-15 14:36:31 +03:00
Ilya Kirillov 50f5a0559e Analysis API: regenerate tests 2021-11-12 22:09:00 +01:00
Yan Zhulanow 21026cc704 [FIR IDE] Enable constant evaluation tests in AAPI/FE10
Implementation of constant evaluation was changed, so now it doesn't
swallow error values.
2021-11-12 20:09:54 +09:00
Yan Zhulanow 9106a4bbc5 [FIR IDE] Enable call resolution tests in AAPI/FE10
Fix numerous cases in Fe10KtCallResolver so the tests pass correctly.
2021-11-12 20:09:53 +09:00
Yan Zhulanow a653a57593 [FIR IDE] Unwrap typealias SAM constructor in AAPI/FE10
This commit fixes KtFe10ResolveCallTestGenerated#testSamConstructorCall().
2021-11-12 20:09:53 +09:00
Yan Zhulanow 2cdaa48e75 [FIR IDE] Support type annotation rendering in AAPI/FE10
This fixes the following tests:
- KtFe10ResolveCallTestGenerated#testVariableAsFunctionWithParameterName()
- KtFe10ResolveCallTestGenerated#testVariableAsFunctionWithParameterNameInNonFunctionType()
- KtFe10ResolveCallTestGenerated#testVariableAsFunctionWithParameterNameGeneric()
- KtFe10ResolveCallTestGenerated#testVariableAsFunctionWithParameterNameMixed()
- KtFe10ResolveCallTestGenerated#testVariableAsFunctionWithParameterNameAnnotation()
2021-11-12 20:09:53 +09:00
Yan Zhulanow 07fb02c1f9 [FIR IDE] Enable symbol-by-psi tests for AAPI/FE10 2021-11-12 20:09:52 +09:00
Yan Zhulanow ae95b6745c [FIR IDE] Provide initializers for non-const properties in AAPI/FE10
This commit partially fixes KtFe10SymbolByPsiTestGenerated.testDeprecated().
2021-11-12 20:09:52 +09:00
Yan Zhulanow 690bb7254a [FIR IDE] Fix deprecations for property accessors in AAPI/FE10
If a property is deprecated, its accessors should also be deprecated.
The same applies to the backing field.

This commit partially fixes KtFe10SymbolByPsiTestGenerated.testDeprecated().
2021-11-12 20:09:52 +09:00
Yan Zhulanow 10f409adc1 [FIR IDE] Handle implicit 'it' lambda argument correctly in AAPI/FE10
This commit partially fixes KtFe10SymbolByPsiTestGenerated.testImplicitReturnInLambda().
2021-11-12 20:09:52 +09:00
Yan Zhulanow d93d55064c [FIR IDE] Return error types from getExpectedType() as is in AAPI/FE10 2021-11-12 20:09:51 +09:00
Yan Zhulanow fac10881ea [FIR IDE] Fix receiverType for non-extension functions in AAPI/FE10
This commit partially fixes KtFe10SymbolByPsiTestGenerated.testDelegateField().
2021-11-12 20:09:51 +09:00
Yan Zhulanow 308e7c9e67 [FIR IDE] Return KtUnsupportedConstantValue for non-const initializers in AAPI/FE10
This commit fixes the following tests:
 - KtFe10SymbolByPsiTestGenerated.testClassInitializer();
 - KtFe10SymbolByPsiTestGenerated.testClassMembes().
2021-11-12 20:09:50 +09:00
Yan Zhulanow b4da714510 [FIR IDE] Fix KtSymbolKind for local symbols in AAPI/FE10
In Analysis API a callable declaration is local only if it is an
immediate child of a callable declaration. Declarations inside anonymous
objects are 'KtSymbolKind.CLASS_MEMBER'.
2021-11-12 20:09:50 +09:00
Yan Zhulanow b8682f04f3 [FIR IDE] Treat enum entry members as local in AAPI/FE10
This commit partially fixes KtFe10SymbolByPsiTestGenerated.testEnumValueMember().
2021-11-12 20:09:49 +09:00
Yan Zhulanow 944ec7ba5a [FIR IDE] Don't return 'open' modality for final class members in AAPI/FE10
This commit partially fixes KtFe10SymbolByPsiTestGenerated.testEnumValueMember().
2021-11-12 20:09:49 +09:00
Yan Zhulanow 94ca387405 [FIR IDE] Fix callableIdIfNonLocal for accessors in AAPI/FE10
Before the behavior was rather random and erroneous. Now the callable id
is also 'null' for Kotlin property accessors, and accessor method id
for synthetic Java properties.
2021-11-12 20:09:49 +09:00
Yan Zhulanow 4f7dc1122f [FIR IDE] Fix KtSymbolProvider.getParameterSymbol() in AAPI/FE10
For loop parameters, Analysis API expects a local variable to be
returned. The additional check regarding lambda parameters is also added
to reflect the FIR behavior.

This commit partially fixes KtFe10SymbolByPsiTestGenerated.testForLoopVariable().
2021-11-12 20:09:49 +09:00
Yan Zhulanow 7934b263c1 [FIR IDE] Fix KtSymbolInfoProvider.getJavaSetterName() in AAPI/FE10
Before the change, the getter name was erroneously returned instead
for properties without a @JvmName() annotation.

This commit fixes KtFe10SymbolByPsiTestGenerated.testBackingField().
2021-11-12 20:09:49 +09:00
Yan Zhulanow d5e26bcf9e [FIR IDE] Refactoring, introduce Fe10AnalysisContext.builtIns 2021-11-12 20:09:48 +09:00
Yan Zhulanow a0e28972d5 [FIR IDE] Always provide accessors from property symbols in AAPI/FE10 2021-11-12 20:09:48 +09:00
Yan Zhulanow 0099e6e81b [FIR IDE] Unify origin logic in AAPI/FE10 2021-11-12 20:09:48 +09:00
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 08e181a543 FIR IDE: add tests about types of array/list and their element 2021-11-09 09:25:45 +01: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
Ilya Kirillov 6453f2bdbf Analysis API: simplify scope hierarchy 2021-11-05 15:46:09 +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