Mark Punzalan
3f3873dc50
Analysis API: Return KtCallCandidateInfo instead of KtCallInfo in
...
KtCallResolver.collectAllCandidates().
2022-02-11 13:22:58 +01:00
Mark Punzalan
7a1ef25333
Analysis API: Rename resolveCandidates to collectCallCandidates.
...
Didn't bother to rename the directory in the test data.
2022-02-11 13:22:58 +01:00
Mark Punzalan
9b9da94a09
Analysis API: Fix issues related to implicit invoke calls:
...
- Correctly set explicit receiver value.
- Restore original function call from FirImplicitFunctionCall (i.e.,
calls implicitly resolved to `invoke`) to get the correct name for
getting all candidates.
- Collect candidates at all tower levels.
Also make order of candidate calls in tests deterministic.
2022-02-11 13:22:58 +01:00
Mark Punzalan
0ed802bca4
Analysis API: Add tests for KtCallResolver.resolveCandidates().
2022-02-11 13:22:57 +01:00
Mark Punzalan
f62bdf5826
Analysis API: Move AbstractResolveCallTest from fir to components
...
package.
2022-02-11 13:22:57 +01:00
Jinseong Jeon
02cfc8b821
AA: reuse CoreJarFileSystem from KotlinCoreEnvironment
2022-02-09 23:11:45 +01:00
Jinseong Jeon
26e923e3ae
AA: introduce static project structure provider by compiler configuration
...
Also add standalone mode utils to configure Application/Project environments
2022-02-09 23:11:43 +01:00
Mads Ager
a398f7d6cb
Rename kt-reference module to kt-references.
2022-02-07 15:01:24 +01:00
Mads Ager
6f0bb0eda5
Add analysis:kt-reference module and move KtReferences there.
2022-02-07 15:01:23 +01:00
Ilya Kirillov
caddbda01b
Analysis API FIR: introduce library resolve tests
2022-01-31 21:11:56 +01:00
Roman Golyshev
564e408434
KT-50862 Add name property to KtSignature
...
See the KDoc of the property for the reasons why
it was created
2022-01-29 07:42:17 +00:00
Mikhail Glukhikh
ad0d0ca47f
Drop redundant Suppress("RemoveExplicitTypeArguments")
2022-01-26 12:19:55 +00:00
Ilya Kirillov
e1fece6402
Analysis API: fix testdata of reference resolve tests which started to pass
2022-01-21 16:46:28 +01:00
Ilya Kirillov
11c50a48ba
Analysis API: add isSubclassOf tests
2022-01-02 21:56:53 +03:00
Ilya Kirillov
1d6d67d0a1
FIR IDE: regenerate tests
2022-01-02 21:56:51 +03:00
Ilya Kirillov
af789346f5
Analysis API: fix getKtExpressionType for array assignment target
2022-01-02 21:56:49 +03: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
Vyacheslav Gerasimov
f7a9065b75
Build: Use intellij maven repo instead of downloaded IDEA
...
#KTI-82
2021-12-16 21:48:23 +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
Mikhail Glukhikh
e558575aec
Fix FIR bootstrap: add explicit type arguments (see KT-49925)
2021-12-10 08:22:16 +03:00
Tianyu Geng
f197fc93db
Analysis API: add test for KtDiagnosticsProvider
2021-12-09 15:56:52 +03: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
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
985c6fa0b8
Analysis API: rework KtSymbol hierarchy
...
- make some symbols to be KtPossiblyMemberSymbols
- introduce KtDeclarationSymbol for declarations
2021-12-02 20:09:19 +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
7919dae558
Analysis API: improve rendering of constant values
2021-12-02 20:09:17 +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
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
02adb1924b
Analysis API: add tests to check annotations on declarations
2021-11-22 22:46:58 +01:00
Ilya Kirillov
22cbcfb3c4
Analysis API: do not require tests to call super.doTestByFileStructure
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
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
Ilya Kirillov
7cb1f19a79
Analysis API: move component test classes to corresponding dirs
2021-11-17 20:55:10 +01: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
Tianyu Geng
1a22124c02
FIR IDE: add helper to resolve call for any KtElement
2021-11-12 21:56:45 +01:00
Yan Zhulanow
d6b9b8bdd4
[FIR IDE] Compare error types consistently in test data
...
Use the fixed error type description so test data can be shared
across both frontends.
2021-11-12 20:09:51 +09:00
Yan Zhulanow
bba53aa967
[FIR IDE] Prettify DebugSymbolRenderer, unify its behavior
2021-11-12 20:09:51 +09:00
Yan Zhulanow
8d18fa2d00
[FIR IDE] Ensure prefixed test output file differs from the default one
2021-11-12 20:09:50 +09:00