Ilya Kirillov
4ae1cb74dd
[Analysis API FIR] fix constant evaluation for incomplete call when compiler produces IntegerLiteralType
...
^KTIJ-21531 fixed
2022-09-30 12:19:51 +02:00
Ilya Kirillov
cd5b9d6356
[Analysis API] do not generate standalone tests which use compiler plugin
2022-09-21 09:44:24 +02:00
Ilya Kirillov
51cece4741
Publish Analysis API test framework
2022-09-21 09:44:23 +02:00
Jinseong Jeon
dd7fc7f4ae
AA FIR: avoid unsafe argument retrieval during const evaluation
2022-09-18 17:22:02 +02:00
Jinseong Jeon
e50da634bc
AA: add tests for resolution to built-ins
2022-09-17 16:43:12 +02:00
Jinseong Jeon
5bf333f6f5
AA: look up built-ins module for deserialized declarations from built-ins
2022-09-17 16:43:10 +02:00
Jinseong Jeon
df95602e06
AA: populate index for built-ins
2022-09-17 16:43:10 +02:00
Jinseong Jeon
5721b3b73c
AA: one representative lib module from compiler configuration
...
Split lib modules, which will be useful for reusable lib modules (if
there are multiple source modules that depend on same lib modules), are
not quite necessary for a project structure built from compiler
configuration. Those rather trigger OOM if lib modules' scopes are not
disjoint.
2022-09-15 21:27:13 +02:00
Jinseong Jeon
e5b75dcd72
AA: cache PackagePartProvider per scope
2022-09-15 20:06:41 +02:00
Jinseong Jeon
2580a5c233
AA: migrate PackagePartProviderFactory to general API providers
2022-09-15 20:06:40 +02:00
Dmitriy Novozhilov
7ef81c27df
[AA] Make KotlinReferenceProvidersService and KotlinReferenceProviderContributor a project services
...
There is no need to have those services on application level
2022-09-15 17:27:20 +03:00
Dmitriy Novozhilov
669e7e071c
[AA] Register library and builtins session factories in Standalone AA Builder
2022-09-15 17:27:19 +03:00
Jinseong Jeon
1464f33c5d
AA FIR: error annotation value for erroneous argument in class reference
2022-09-15 12:36:31 +02:00
Jinseong Jeon
836b6dae9f
AA FIR: constant evaluation for String
2022-09-14 12:52:08 +02:00
Jinseong Jeon
68519af97a
AA: add tests about platform types
...
...as declaration return type or expression type
2022-09-09 15:02:23 +02:00
Vladimir Sukharev
c8864369fd
Use main class as test generator name
...
Merge-request: KT-MR-7031
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com >
2022-09-09 12:51:18 +00:00
Roman Golyshev
bb2bee74cf
[HL API] Fix FE10 implementation of KtExpressionTypeProvider
2022-09-01 13:57:03 +00:00
Dmitry Gridin
924dd38144
[lc] introduce KotlinAsJavaSupportBase with new common facade logic
...
^KT-53543
2022-08-29 11:51:42 +00:00
Jinseong Jeon
25f7554a31
AA FIR: constant evaluation for Java field
2022-08-20 00:50:09 +02:00
Jinseong Jeon
9e35815ae3
AA: fail-safe path retrieval of source files
...
Also, apply file extension-based filtering since javaSourceRoots is
supposed to refer to either KotlinSourceRoot or JavaSourceRoot.
2022-08-17 21:32:29 +02:00
Ilya Kirillov
e489c9b549
[analysis] regenerate tests
2022-08-17 19:16:18 +02:00
Jinseong Jeon
1b79ee89ba
AA: drop ProjectStructureProvider#getKtBinaryModules
...
Instead, provide an option to register PSI declaration provider inside
Analysis API session builder where we can retrieve all necessary pieces,
including CoreJarFileSystem, PackagePartProvider, and binary modules
from internal project structure provider.
2022-08-17 19:16:18 +02:00
Jinseong Jeon
2a864b3685
AA: add tests for PsiDeclarationAndKtSymbolEqualityChecker
2022-08-17 19:16:17 +02:00
Jinseong Jeon
846ab7d97b
AA: revamp standalone-mode tests
2022-08-17 19:16:17 +02:00
Simon Ogorodnik
513af2dfbc
FIR. Refactor smart-cast representation in FIR tree
...
Make smart-casts non-transparent expression without delegation
to underlying FirQualifiedAccessExpression, as children delegation in
fir tree has unclear semantics
Remove two different kinds of tree nodes for smart-casts
2022-08-15 21:46:11 +00:00
Ilya Kirillov
4d5f1dc1bb
[FIR] do not fail when Continuation classes not found in classpath
2022-08-10 22:49:12 +02:00
Jaebaek Seo
50c293f83f
Fix array access expression getKtType() bug
...
For an array access expression e.g., `foo[3]`,
KtFirExpressionTypeProvider first tries
`getReturnTypeForArrayStyleAssignmentTarget(..)` method that determines
the type of the array access expression when it is in the form of "set"
the value. However, the method also returns a non-null result for an
array access expression that reads its value i.e., "get". In this case,
the result of `getKtType()` becomes wrong. This commit lets the method
return a null for the type of "get" array access expression.
2022-08-10 17:34:49 +02:00
Jinseong Jeon
b173b1fe24
AA: use package part info (if available) when searching for PSI from binary module
2022-08-10 17:34:48 +02:00
Jinseong Jeon
56a5d883c0
AA FIR: handle (aliased)? annotation w/ vararg parameter
2022-08-10 17:34:48 +02:00
Dmitry Gridin
c0d6a64a8a
[slc] rename fir to symbol
...
^KT-50241
2022-08-08 19:08:46 +00:00
Jinseong Jeon
4531080858
AA: introduce KtNotUnderContentRootModule impl to standalone mode
...
to gracefully handle element/file/etc without a binding module.
This could happen, e.g.,
1) source PSI created from KtPsiFactory, which uses literally dummy.kt
2) debugger that creates a code fragment on-the-fly
3) on-air analysis of non-physical files
2022-08-06 13:18:55 +02:00
Jinseong Jeon
e8e88b4eb2
AA: deprecate utils in StandaloneUtils
...
...in favor of StandaloneAnalysisAPISessionBuilder
2022-08-06 13:18:54 +02:00
Dmitry Gridin
4ceb170917
regenerate tests
2022-08-05 14:12:41 +02:00
Jinseong Jeon
6b0a5e2908
AA: register LLFir(Library|Builtin)SessionFactory
2022-08-02 17:33:45 +02:00
Ilya Kirillov
556add72ff
[Analysis API FIR] fix KDoc reference resolve for aliased imports
2022-07-28 01:37:54 +02:00
Ilya Kirillov
d9c4fda521
[Analysis API FIR] implement reference resolve inside KDoc
...
^KTIJ-22324 fixed
2022-07-28 01:37:53 +02:00
Ilya Kirillov
a0f0fa5a47
[Analysis API FIR] fix candidate collection for delegatedConstructor call
...
^KTIJ-20446
2022-07-22 00:58:59 +02:00
Ilya Kirillov
dd00062559
[analysis] introduce KtBuiltinsModule and remove hacks related to the stdlib module search
2022-07-19 17:17:33 +02:00
Ilya Kirillov
dc4527462f
[LL FIR] create separate library session for each library
2022-07-19 17:17:33 +02:00
Jaebaek Seo
8d5c6297c7
Add ReadWriteAccessCheckerFirImpl class
...
ReadWriteAccessCheckerFirImpl class is ReadWriteAccessChecker
implementation for FIR. We register it for both stand-alone and test
analsys. It is used by KotlinFirReferenceContributor.kt to check the
synthetic Java property.
2022-07-12 16:47:40 +02:00
Ilya Kirillov
184478858c
[Analysis API] add isNoinline/isCrossinline to the KtValueParameterSymbol
2022-07-05 10:34:29 +02:00
Ilya Kirillov
8f89f1b368
[Analysis API] add info about context receivers to the Analysis API
2022-07-05 10:34:28 +02:00
Ilya Kirillov
271ecfbd68
[Analysis] Try to fix randomly failing tests because of unregistered FileAttributeService
...
It should be unregistered with the application by ApplicationEnvironmentDisposer
which is registered in :compiler:tests-common-new
2022-07-01 11:33:21 +02:00
Jinseong Jeon
20d618c0a8
AA: populate CorePackageIndex
...
so that annotations in package-info.java can be propagated properly
2022-06-28 11:44:41 +02:00
Ilya Kirillov
89ff1f0c0b
[Analysis API FIR] fix member scope for enum entries without body
2022-06-24 15:36:32 +00:00
Kristoffer Andersen
3af0e57406
[FIR-IDE] Add DestructuringDeclarationEntry to SymbolProvider
2022-06-22 21:20:54 +02:00
Jinseong Jeon
2d52c59bc7
AA: introduce KtDynamicType
2022-06-22 20:14:39 +02:00
Ilya Kirillov
36f370f501
[Analysis API] add tests for KtTypeScope
2022-06-22 09:31:47 +02:00
Ilya Kirillov
b9907963fe
[Analysis API] add tests for KtSubstitutor
2022-06-22 09:31:47 +02:00
Ilya Kirillov
dafb132a17
[Analysis API] add few tests which checks contracts of signature substitutions
2022-06-22 09:31:43 +02:00