Commit Graph

24537 Commits

Author SHA1 Message Date
Florian Kistner 9775a2148a 203: Fix compilation 2020-09-02 18:48:57 +02:00
Pavel Kirpichenkov 9d12df28c1 [FIR-IDE] Add idea-fir test runtime dep for fir plugin only
Leads to duplicated bundled resources annotation templates otherwise.
2020-09-02 19:15:07 +03:00
Pavel Kirpichenkov 26982d1b48 [FIR-IDE] Use delegating KtScope for type param scope 2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov 0d3f1af6e4 Fix imports after rebase 2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov 5ddf62b30f [FIR-IDE] Use thread-local cache in completion component 2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov f229ae413d [FIR-IDE] Ignore FirMemberTypeParameterScope in KtScopes 2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov dc538d420e [FIR-IDE] Changes after review
Move usage of SingleCandidateResolver into dedicated component from KtFirAnalysisSession.
Add validity assertion, use concurrent map for context cache, provide original PSI when building context.
Update names, make other minor changes.
2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov ec072798b1 [FIR-IDE] Hack for checking single candidate resolver in tests 2020-09-02 19:15:06 +03:00
Pavel Kirpichenkov 2c816d8911 [FIR-IDE] Introduce resolver for a single candidate
The purpose of this resolver is to reuse parts of tower resolver in IDE tasks.
For now it can run resolution stages to check suitability of extension receiver.
2020-09-02 19:15:06 +03:00
Roman Artemev c6a338bcdc Mute broken stepping JVM IR tests
They are broken because of c7b57c0fb3.
Current debug info generator in IR uses information from descriptors so
removing that break tests.
2020-09-02 17:52:27 +03:00
Roman Golyshev 3d5ec8aa10 FIR Completion: Add simple classifiers completion
- This also fixes a few test
2020-09-02 14:32:53 +03:00
Roman Golyshev 64645c5049 FIR Completion: Refactor KotlinAvailableScopesCompletionProvider
- Move different types of completion to separate functions
2020-09-02 14:32:53 +03:00
Roman Golyshev 0375a19e78 FIR Completion: Refactor KotlinAvailableScopesCompletionProvider 2020-09-02 14:32:53 +03:00
Roman Golyshev 1ab246f71e FIR Completion: Drop originalPosition parameter from getScopeContextForPosition
- It is easier to retrieve the original enclosing function by the fake
enclosing function than trying to correct the `originalPosition` in
different situations
2020-09-02 14:32:52 +03:00
Roman Golyshev ab5059e08e FIR Completion: Rename FIR completion classes to be more uniform 2020-09-02 14:32:52 +03:00
Ilya Kirillov 106d8e74d4 FIR IDE: unmute passing completion tests 2020-09-02 11:16:20 +03:00
Ilya Kirillov 775dc7b135 FIR IDE: add type parameters support to completion 2020-09-02 11:16:20 +03:00
Ilya Kirillov 6d18bb6ba2 FIR IDE: add type parameters support to scopes 2020-09-02 11:16:19 +03:00
Ilya Kirillov 7a1b1efef3 FIR IDE: register missing Java specific components for libraries session 2020-09-02 11:16:18 +03:00
Ilya Kirillov 162a2ac7b0 FIR IDE: fix lazy resolve for non local declaration without containing class 2020-09-02 11:16:17 +03:00
Ilya Kirillov 87898021a1 FIR IDE: introduce multi module lazy resolve tests 2020-09-02 11:16:17 +03:00
Ilya Kirillov 8714ad575f FIR IDE: move FIR IDE completion tests to idea-fir module 2020-09-02 11:16:16 +03:00
Ilya Kirillov 7cb3f62f51 FIR IDE: remove IGNORE_FIR from passing resolve tests 2020-09-02 11:16:16 +03:00
Ilya Kirillov 1ccf8bfb67 FIR IDE: fix completion in function with expression body 2020-09-02 11:16:15 +03:00
Denis Zharkov 1c0e3b30a2 FIR: Use return type calculator in FirTypeMismatchOnOverrideChecker 2020-09-01 17:43:30 +03:00
Denis Zharkov b4aef21423 FIR: Simplify API for ensureResolved
Additional `as` casts look redundant, but it's a design issue (see KT-41421)
2020-09-01 17:43:30 +03:00
Denis Zharkov 2529f541ba FIR: Prepare refactoring of phasedFir
- Rename PhasedFirFileResolver -> FirPhaseManager
- Move semantically significant parts to a component
2020-09-01 17:43:30 +03:00
Roman Golyshev b3199d14b8 FIR IDE: Use correct property-by-package index in KtFirPackageScope 2020-09-01 14:50:19 +03:00
Roman Golyshev 5180a65f0b FIR Completion: Use proper types rendering 2020-09-01 14:28:59 +03:00
Roman Golyshev 7649043479 FIR IDE: Set correct source for the function built in the air
- This enables the completion to work in the declaration itself, not
only in body
2020-09-01 10:09:46 +00:00
Roman Golyshev 90c89bddc5 FIR IDE: Add collecting scopes for declarations
- They are required to perform completion in default arguments,
return types, and other declaration parts (except for body)
2020-09-01 10:09:46 +00:00
Roman Golyshev 76eb5d46f4 FIR IDE: Add FirTowerDataContextCollector class
- This class just encapsulates the map that is used to collect scopes
2020-09-01 10:09:45 +00:00
Dmitriy Novozhilov 011bb0924a [FIR-IDE] Introduce FirIdeSessionFactory for creating ide sessions 2020-09-01 12:00:13 +03:00
Dmitriy Novozhilov 6db8c28291 [FIR] Refactor session components initialization
From now all customization of session should perform via DSL which
  declared in FirSessionFactory. Registration or mutation session
  services from other places is prohibited
2020-09-01 12:00:12 +03:00
Dmitriy Novozhilov a8d23c36f5 [FIR] Introduce module :fir:entrypoint and FirSessionFactory for creating sessions 2020-09-01 12:00:12 +03:00
Dmitriy Novozhilov 3379d9b619 [FIR] Extract java related effective visibility calculation to platform component 2020-09-01 12:00:11 +03:00
Nikolay Krasko 56f0fb6c70 Prevent test failures because of Leaked Android SDK
Stop implicit adding additional SDK from environment variables in
GradleSpecificInitializer and AndroidSdkInitializer.
2020-08-31 21:18:26 +03:00
Igor Yakovlev 48a3d4b8e0 [ULC] Add recursion guard to getLightClass
Fixed KT-41325
2020-08-31 18:01:37 +03:00
Ilya Kirillov 40669350f7 Wizard: navigate to wizard help page when clicking help button 2020-08-31 12:50:01 +03:00
Nicolay Mitropolsky af35b6c3c8 Provide icons to Kotlin Light-elements (KT-26235) 2020-08-31 10:54:46 +03:00
Ilya Kirillov c804319e65 FIR IDE: fix compilation on AS 2020-08-28 12:51:55 +03:00
Ilya Kirillov 36cc73602e FIR IDE: fix testdata of AbstractFirLazyResolveTest 2020-08-28 12:51:55 +03:00
Ilya Kirillov 3cd445563e FIR IDE: implement KotlinExpressionTypeProvider for FIR 2020-08-28 12:51:55 +03:00
Ilya Kirillov fcc7db5224 FIR IDE: introduce analyseInModalWindow function 2020-08-28 12:51:23 +03:00
Ilya Kirillov 81be230541 FIR IDE: add validity assertion on analysis session access 2020-08-28 12:15:19 +03:00
Ilya Kirillov db48884a4e FIR IDE: add check canceled check between diagnostics 2020-08-28 12:15:18 +03:00
Ilya Kirillov 95a96f32bf FIR IDE: log errors on diagnostics, not throw them 2020-08-28 12:15:17 +03:00
Ilya Kirillov ebafd0fb51 FIR IDE: resolve ambiguity & inapplicable references 2020-08-28 12:15:16 +03:00
Ilya Kirillov 4fa2dd85b4 FIR IDE: move lazy resolve to FirLazyDeclarationResolver 2020-08-28 12:15:15 +03:00
Ilya Kirillov 8faaff00fa FIR IDE: run lazy resolve on declaration when getting phased fir 2020-08-28 12:15:14 +03:00