Ilya Kirillov
62e4b53d03
FIR IDE: fix not added import for functions
2021-06-03 19:38:52 +03:00
Ilya Kirillov
0534d3fb98
fix after rebase
2021-06-03 19:38:51 +03:00
Ilya Kirillov
a926a1f534
FIR IDE: handle . after package name in completion tests
2021-06-03 19:38:50 +03:00
Ilya Kirillov
4785f36d8d
FIR IDE: implement completion for packages
2021-06-03 19:38:49 +03:00
Ilya Kirillov
943ae108f5
FIR IDE: introduce import statement completion
2021-06-03 19:38:48 +03:00
Ilya Kirillov
c998d0f026
FIR: make FirStaticScope to be name aware
2021-06-03 19:38:47 +03:00
Ilya Kirillov
b81ef157b2
FIR IDE: fix reference resolve in import statement
2021-06-03 19:38:45 +03:00
Ilya Kirillov
55621b7aad
FIR IDE: do not complete callables for classifier without companion
2021-06-03 19:38:44 +03:00
Ilya Kirillov
365bc5712b
FIR IDE: do not add internal packages to completion
2021-06-03 19:38:42 +03:00
Ilya Kirillov
48b69b4f3f
FIR IDE: add test for super keyword completion with qualifier
2021-06-03 19:38:41 +03:00
Ilya Kirillov
0a6243fc67
FIR IDE: implement super qualifier completion
2021-06-03 19:38:40 +03:00
Ilya Kirillov
7d351ca6b1
FIR IDE: add possibility to have different testdata for fir & fe10 keyword tests
2021-06-03 19:38:39 +03:00
Ilya Kirillov
c81a9c9d18
FIR IDE: mute test which fails as we have no decalration name completion
2021-06-03 19:38:37 +03:00
Ilya Kirillov
0739f6974f
FIR IDE: fix completion of type arguments without closing >
2021-06-03 19:38:36 +03:00
Ilya Kirillov
d510f0809a
FIR IDE: do not break formatting of reference shortenner
2021-06-03 19:38:35 +03:00
Ilya Kirillov
11e77d464d
FIR IDE: add completion with package receiver
2021-06-03 19:38:34 +03:00
Ilya Kirillov
e77783a0e5
FIR IDE: add packages name completion
2021-06-03 19:38:32 +03:00
Ilya Kirillov
df93dc91d1
FIR IDE: fix package reference resolve
2021-06-03 19:38:31 +03:00
Ilya Kirillov
d76ec9db50
FIR IDE: add completion for annotations
2021-06-03 19:38:30 +03:00
Ilya Kirillov
6b450e6fdf
FIR: make FirOnlyClassifiersScope/FirOnlyCallablesScope to be name aware
2021-06-03 19:38:29 +03:00
Ilya Kirillov
fcc5af99f3
FIR IDE: enable passing keyword tests
2021-06-03 19:38:27 +03:00
Ilya Kirillov
f7cf80b8e9
FIR IDE: render short names as for completion lookup element types
2021-06-03 19:38:26 +03:00
Ilya Kirillov
a718a2c2d8
FIR IDE: fix completion of top level type aliases
2021-06-03 19:38:25 +03:00
Ilya Kirillov
bcf7116955
FIR IDE: add type completion with dot
2021-06-03 19:38:24 +03:00
Ilya Kirillov
e03916e7fb
FIR IDE: add index helper to FirBasicCompletionContext
2021-06-03 19:38:22 +03:00
Ilya Kirillov
6c9831f7d4
FIR IDE: separate callable and type completion
2021-06-03 19:38:21 +03:00
Ilya Kirillov
e7288b3293
FIR IDE: extract FirCallableCompletionContributor
2021-06-03 19:38:20 +03:00
Ilya Kirillov
8dda232ae3
FIR IDE: move CompletionVisibilityChecker/ExtensionApplicabilityChecker to dedicated package
2021-06-03 19:38:19 +03:00
Ilya Kirillov
a437cd9d86
FIR IDE: do not capture KtAnalysisSession receiver for CompletionVisibilityChecker/ExtensionApplicabilityChecker
2021-06-03 19:38:18 +03:00
Ilya Kirillov
3df075061c
FIR IDE: extract classifier completion separate completion provider
2021-06-03 19:38:17 +03:00
Victor Petukhov
1e5998e0ba
Add constraints between two different stub variables instead of creating constraint error due to T1 isn't subtype of T2
...
^KT-44241 Fixed
2021-06-03 19:18:09 +03:00
Nikita Bobko
071ae301b4
Add possibility to use baseDir in AdditionalDiagnosticsSourceFilesProvider
...
In IJ infrastructure we have specific path prefix for compiler testData
2021-06-03 19:05:47 +03:00
Jinseong Jeon
10f19c8f4a
FIR UAST: invalidate caches between tests
2021-06-03 17:56:16 +02:00
Jinseong Jeon
37d8e6ddc3
FIR UAST: relocate render/log test data
2021-06-03 17:56:16 +02:00
Jinseong Jeon
80b94a43b0
FIR/UAST: split KotlinUIdentifier into a separate file
2021-06-03 17:56:16 +02:00
Jinseong Jeon
68766024b3
FIR/UAST: commonize Identifier implementations
2021-06-03 17:56:16 +02:00
Jinseong Jeon
6af930f6df
FIR UAST: convert LeafPsiElement to UIdentifier
2021-06-03 17:56:16 +02:00
Jinseong Jeon
83256ef3bd
FIR UAST: introduce identifiers and refNames tests
2021-06-03 17:56:16 +02:00
Jinseong Jeon
c37123603c
UAST: utilize identifier test base
2021-06-03 17:56:16 +02:00
Ivan Kochurkin
da15f0ffe8
[FIR] Consider fullyExpandedType instead of original type in isSubtypeForTypeMismatch, consider lookupTag in isError method
2021-06-03 18:24:36 +03:00
Ivan Kochurkin
0b0a96a1d3
[FIR] Fix processing of nested type arguments, extract extractTypeRefAndSourceFromTypeArgument method to FirHelpers and use it from FirClassVarianceChecker and FirConflictingProjectionChecker
2021-06-03 18:24:35 +03:00
Ivan Kochurkin
f081a6b4fa
[FIR] Implement REDUNDANT_PROJECTION diagnostics, rename FirConflictingProjectionChecker -> FirProjectionRelationChecker, fix tests
2021-06-03 18:24:34 +03:00
Ivan Kochurkin
03e577bf98
[FIR] Implement CONFLICTING_PROJECTION_IN_TYPEALIAS_EXPANSION diagnostics, fix tests
2021-06-03 18:24:32 +03:00
Ivan Kochurkin
ca970f0a8b
[FIR] Add ConeKotlinTypeConflictingProjection, return it from substituteArgument instead of ConeStarProjection in appropriate cases, remove plus operator from ProjectionKind
2021-06-03 18:24:30 +03:00
Ivan Kochurkin
b85846c0c0
[FIR] Fix location for CONFLICTING_PROJECTION diagnostics, extend conflictingProjection.kt with test sample
2021-06-03 18:24:29 +03:00
Ilya Goncharov
ce78457eaa
[Gradle, JS] Use replace by just string, not regexp in webpack config
...
^KT-43379 fixed
2021-06-03 17:55:05 +03:00
Ilya Goncharov
8c38c4a8e7
[Gradle, JS] Add dependency from packageJson task on included build's rootPackageJson
2021-06-03 17:55:04 +03:00
Victor Petukhov
19c07e048a
Don't check suitability of a builder inference call if unrestricted builder inference is enabled
...
^KT-42139 Fixed
2021-06-03 17:28:40 +03:00
Dmitry Savvinov
f8fbbc01b6
Don't append 'is a module' suffix to ModuleDescriptor debug text
2021-06-03 17:22:00 +03:00
Dmitry Savvinov
708fead1cc
Add debug strings to frontend scopes-related structures
...
Such as:
- PackageFragmentProviders, and, in particular,
CompositePackageFragmentProviders
- JavaPackageFragments
- Scopes produced by those providers
The rationale is that a lot of frontend-facing bugs (like red code) are
easily recognizeable in resolution. But at that point you just see a
bunch of scopes, without meaningful toStrings, you don't know who has
produced them, and what's exactly wrong.
With this commit it should make debugging slightly easier: now at least
you'll be able to see that "this scope is a scope of package fragment
for foo.bar of module baz" and decide whether the declaration should or
should not have been resolved from such scope.
2021-06-03 17:21:59 +03:00