Ilya Kirillov
5e42be9849
Analysis API: fix redundant caret symbol in testdata
2022-01-02 21:56:54 +03:00
Ilya Kirillov
11c50a48ba
Analysis API: add isSubclassOf tests
2022-01-02 21:56:53 +03:00
Ilya Kirillov
af789346f5
Analysis API: fix getKtExpressionType for array assignment target
2022-01-02 21:56:49 +03:00
Roman Golyshev
3f8fff55cf
FIR IDE: Fix ImportOptimizer for types used as generics' parameters
2021-12-24 16:31:34 +00:00
Roman Golyshev
e3219cc5b6
FIR IDE: Avoid resolving elvis operator, because it doesn't make sense
...
There are intrinsics to which elvis operator's usages are resolved;
however, we do not want to expose those intrinsics through the
high-level resolve
2021-12-21 18:48:00 +03:00
Mads Ager
61265a6501
Return error candidates from KtFirArrayAccessReference.resolveToSymbols
2021-12-21 13:22:15 +03:00
Simon Ogorodnik
d084cfb65b
FIR HL API: Unwrap substitution overrides if it contains stub types
2021-12-15 22:23:15 +03:00
Tianyu Geng
5fbe5981f7
Analysis API: add KtType.isDenotable()
2021-12-15 16:09:31 +03:00
Tianyu Geng
2f393cdd02
FE1.0 Analysis API: get smartcast if available with getKtExpressionType
...
The current implementation still does not work with multicast. In
addition, it appears FE1.0 does not attempt smart cast if it's not used.
2021-12-15 16:09:29 +03:00
Tianyu Geng
f197fc93db
Analysis API: add test for KtDiagnosticsProvider
2021-12-09 15:56:52 +03:00
Tianyu Geng
b52dc15aa7
Analysis API: remove dispatch receiver type from XXXSubstitutionOverridesUnwrappingTest
2021-12-09 11:01:52 +01:00
Tianyu Geng
9153db2ecc
FE1.0 Analysis API: rewrite KtFe10CallResolver
2021-12-09 11:01:52 +01:00
Tianyu Geng
f1bd3597f8
FE1.0 Analysis API: make KtSymbol only reference declaration-site subst-overrides
...
This is the FE1.0 counterpart of fa8bb47bdf
2021-12-09 11:01:52 +01:00
Tianyu Geng
9b05019137
FIR Analysis API: reimplement KtFirCallResolver with new data model
2021-12-06 12:40:43 +01:00
Tianyu Geng
c9f9ce99c1
Analysis API: adapt to KtCall data model change
...
Also add API to check if a `KtFunctionSymbol` is the invoke function on
a Kotlin builtin functional type.
2021-12-06 12:40:42 +01:00
Tianyu Geng
bc95733818
FIR LL API: resolve PSI elements to more specific FIR element
...
Compound access and implicit delegated constructor are mapped to FIR
elements that are way too broad.
2021-12-06 12:40:41 +01:00
Ilya Kirillov
6e4c87f138
Analysis API: pretty print declarations additionaly to debug rendering in some tests
2021-12-02 20:09:19 +01:00
Ilya Kirillov
bad91915a6
Analysis API: adapt reference resolve tests to changes in renderer
2021-12-02 20:09:19 +01:00
Ilya Kirillov
0a5bbc0096
Analysis API: update rendering testdata after changing renderer
2021-12-02 20:09:18 +01:00
Ilya Kirillov
7919dae558
Analysis API: improve rendering of constant values
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
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
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
e440c229f6
Analysis API: improve annotations value rendering in DebugSymbolRenderer
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
fff8eb244c
Analysis API: add annotations to KtTypeAliasSymbol
2021-11-22 22:46:57 +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
bdde70312d
Analysis API: update testdata after removing KtTypeAndAnnotations
2021-11-22 22:46:54 +01:00
Dmitriy Novozhilov
01c0cf80d0
[FIR] Support @kotlin.jvm.PurelyImplements annotation
2021-11-22 17:01:17 +03: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
Jinseong Jeon
d91170ed2c
FIR IDE: add more tests about resolving reference to type parameters
2021-11-18 17:33:17 +01:00
Ilya Kirillov
6f6a33e852
Analysis API: move testdata to corresponding components folders
2021-11-17 20:55:08 +01:00
Jiaxiang Chen
f8262a2549
implement KtSymbolWithTypeParameters interface for KtPropertySymbol
2021-11-17 18:22:34 +01:00
Ivan Kylchik
c7435ba760
Replace all occurrences of WITH_RUNTIME with WITH_STDLIB
...
We are going to deprecate `WITH_RUNTIME` directive. The main reason
behind this change is that `WITH_STDLIB` directive better describes
its meaning, specifically it will add kotlin stdlib to test's classpath.
2021-11-17 15:26:38 +03:00
Roman Golyshev
13e27a3e06
[FIR IDE] Get rid of KtPossiblyMemberSymbol::dispatchType
2021-11-15 14:36:35 +03:00
Tianyu Geng
1c8d1fcdba
FIR Tree: make FirDefaultPropertyAccessor propagate dispatchReceiverType
...
Custom property accessor has this property set and hence it make sense
for the default accessor to have it too. Also, FE1.0's counterpart
has this bit set and it's returned through the analysis API.
2021-11-15 11:10:46 +03:00
Ilya Kirillov
540bbc6bef
Analysis API: temporary update descriptors testdata
2021-11-12 23:19:41 +01:00
Tianyu Geng
a8ae704c0c
FIR IDE: fix property accessor resolution
...
For property access with implicit receiver, the resolved fir is a
FirPropertyAccessExpression and hence we need to handle it in
KtFirCallResolver.
2021-11-12 21:56:46 +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
5e9c397023
[FIR IDE] Fix unsigned number evaluation test in AAPI/FE10
...
Constant evaluator of FE10 checks existence of the unsigned type
in the classpath. Absence of UInt leads to a failure.
2021-11-12 20:09:53 +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
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