Ilya Kirillov
a671054fa3
FIR IDE: change until-build to 203.* in plugin.xml
2020-12-07 17:45:22 +01:00
Ilya Kirillov
be95d067f3
FIR IDE: add KotlinOutOfBlockPsiTreeChangePreprocessor
2020-11-23 15:31:24 +01:00
Ilya Kirillov
880e76b203
FIR IDE: introduce FIR IDE specific out of block modification tracker
2020-11-23 15:30:07 +01:00
Igor Yakovlev
b742a475ff
[FIR IDE] Initial FIR LightClass implementation
2020-11-11 21:02:18 +03:00
Igor Yakovlev
d534d92123
[FIR IDE] Implement FIR for KotlinUsageTypeProvider
2020-09-25 17:26:22 +03:00
Ilya Kirillov
fa570710ee
FIR IDE: move diagnostic highlighting to separate
...
pass
2020-09-23 21:41:54 +03:00
Igor Yakovlev
be4fcd626c
[FIR IDE] Separate searchers from descriptor usage
...
KotlinConstructorDelegationCallReferenceSearcher
KotlinConventionMethodReferencesSearcher
KotlinDefinitionsSearcher
KotlinOverridingMethodReferenceSearcher
KotlinPropertyAccessorsReferenceSearcher
KotlinTodoSearcher
2020-09-16 10:47:47 +03:00
Igor Yakovlev
16d51eb510
[FIR IDE] Add ReadWriteAccessChecker FIR stub
2020-09-15 11:25:07 +03:00
Igor Yakovlev
f05630fcab
[FIR IDE] Enabled search services and added services stubs
2020-09-15 11:25:07 +03:00
Igor Yakovlev
1a10275d0d
[FIR IDE] Enabled usages services and added services stubs
2020-09-15 11:25:06 +03:00
Igor Yakovlev
75347d06b9
[FIR IDE] Move IconProvider in fir independed module
2020-09-15 11:25:06 +03:00
Igor Yakovlev
e30f09d513
[FIR IDE] Separate find usages logic from descriptors
2020-09-15 11:25:06 +03:00
Vladimir Dolzhenko
e5985ad98b
Rename PluginStartupService to PluginStartupApplicationService
2020-09-09 12:51:18 +00:00
Ilya Kirillov
3cd445563e
FIR IDE: implement KotlinExpressionTypeProvider for FIR
2020-08-28 12:51:55 +03:00
Ilya Kirillov
5e5e19f482
FIR IDE: temporary disable AddFunctionReturnTypeIntention
2020-08-17 11:38:05 +03:00
Ilya Kirillov
b5a4e4c409
FIR IDE: introduce applicable computation & -based inspection
2020-08-17 11:37:56 +03:00
Ilya Kirillov
db7119f04d
FIR IDE: fix ability to create new Kotlin files
2020-08-09 12:05:11 +03:00
Ilya Kirillov
5f424ed1ec
FIR IDE: rewrite low level API
...
- Cache ModuleResolveState for module till the world changes
- Resolve every file under a lock
- All creation of raw fir files and resolve of them happens in FirFileBuilder
- Lazy resolve of fir elements happens in FirElementBuilder
Caching works like the following:
- FirModuleResolveState holds PsiToFirCache & DiagnosticsCollector & FileCacheForModuleProvider
- FileCacheForModuleProvider holds a mapping from ModuleInfo to ModuleFileCache
- ModuleFileCache caches
- KtFile -> FirFile mapping
- ClassId -> FirClassLikeDeclaration, CallableId -> FirCallableSymbol
which used in corresponding FirProvider
- mapping from declaration to it's file
which used in corresponding FirProvider
- locks for fir file resolving
- PsiToFirCache provides mapping from KtElement to FirElement
- DiagnosticsCollector collects diagnostics for file and caches them
2020-08-09 12:04:11 +03:00
Roman Golyshev
a1b621d987
Completion with FIR (prototype, work-in-progress)
2020-08-09 12:00:44 +03:00
Ilya Kirillov
15ecfd84b4
FIR IDE: cache KtAnalysisSession for modules
2020-08-09 11:59:15 +03:00
Ilya Kirillov
8c0197e081
FIR IDE: introduce KtAnalysisSessionProvider & helping functions for working with analysis session
2020-08-09 11:59:10 +03:00
Ilya Kirillov
57aefbcd57
FIR IDE: migrate to 201
2020-07-02 19:34:37 +03:00
Ilya Kirillov
d317ee1197
FIR IDE: move highlighting to fir ide module
...
As it doesn't use fir directly
2020-06-09 16:20:00 +03:00
Ilya Kirillov
a62c0e8163
FIR IDE: introduce fir lower level module
2020-06-09 16:19:58 +03:00
Ilya Kirillov
ba7e953760
FIR IDE: Introduce plugin.xml for fir ide
2020-06-09 16:19:45 +03:00