Ilya Kirillov
5cffcfaf9f
Analysis API FE1.0: consider rendering parameters when rendering annotations
2021-12-02 20:09:18 +01:00
Ilya Kirillov
2d032112fd
Analysis API FE1.0: fix rendering of enum entry
2021-12-02 20:09:18 +01:00
Ilya Kirillov
19dec92247
Analysis API: rework declaration renderer
...
- refactor code to use PrettyPrinter instead of ad-hoc one
- do not print nested local declarations as this does not seem to have use-cases
2021-12-02 20:09:18 +01:00
Ilya Kirillov
c4e5ec2ff2
Analysis API: fix unsigned constant value creation for fe1.0
2021-12-02 20:09:17 +01:00
Ilya Kirillov
673459580c
Analysis API: introduce annotation value for KClass
2021-12-02 20:09:16 +01:00
Ilya Kirillov
f722a54c78
Analysis API: separate constant values from annotation values
2021-12-02 20:09:16 +01:00
Ilya Kirillov
47c1da2845
FIR IDE: separate KtAnnotationApplication and KtAnnotationApplicationValue
2021-12-02 20:09:16 +01:00
Ilya Kirillov
b1c8a9e886
Analysis API: rename KtConstantValue -> KtAnnotationValue as it is annotation specific
2021-12-02 20:09:14 +01:00
Ilya Kirillov
a70c336c2c
Analysis API: fix constructor return type for FE1.0 implementation
2021-11-30 18:02:33 +01:00
Tianyu Geng
6e555e1d28
FE1.0 Analysis API: fix getReturnTypeForKtDeclaration for setter parameter
2021-11-30 18:02:33 +01:00
Tianyu Geng
f1d0791f15
Analysis API: add test for KtDeclaration.getReturnKtType
...
FE1.0 always return kotlin.Unit as return type for constructors while
FIR returns the constructed class type. I am not sure which is more
desirable. Also, I am not sure how to make FE1.0 behave the same way.
2021-11-30 18:02:33 +01:00
Roman Golyshev
2a8431d80c
[FIR IDE] Unify creation of KtFe10DescFunctionSymbol
...
It will be required later to implement overrides unwrapping logic
for descriptor-based symbols
2021-11-25 21:19:58 +03:00
Roman Golyshev
fa8bb47bdf
[FIR IDE] Add unwrapping substitution overrides which doesn't affect function's signature
...
Also, do not use PSI to restore SUBSTITUTION_OVERRIDE function/property
symbols
2021-11-25 21:19:56 +03:00
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