Ivan Kochurkin
1bb158e45c
[FIR] Add SourceSet.generatedDir() and use it in build.gradle.kts
2022-07-25 23:30:10 +02:00
Ilya Kirillov
e8bf8cb182
[Analysis API FIR] fix type rendering for type with "Cannot infer type for parameter" error
2022-07-22 00:58:58 +02:00
Ilya Kirillov
dbfeeae696
[fir] add more info to the error message in FirModuleData
2022-07-19 17:17:32 +02:00
Mikhail Glukhikh
13713323cf
Make FirRenderer inherit FirRendererComponents instead of FirPrinter
...
#KT-53024 Fixed
2022-07-14 09:38:46 +00:00
Mikhail Glukhikh
7ce5100946
FirRenderer: slightly change/refactor declaration rendering
2022-07-14 09:38:45 +00:00
Mikhail Glukhikh
ac34fe3306
FirRenderer: code cleanup & move parts to contract renderer
2022-07-14 09:38:44 +00:00
Mikhail Glukhikh
801426d0e6
Simplify creation of FirRenderer
2022-07-14 09:38:44 +00:00
Mikhail Glukhikh
f9fdb5d3bc
Extract separate FirResolvePhaseRenderer
2022-07-14 09:38:43 +00:00
Mikhail Glukhikh
42b3adf33a
Extract separate ConeIdRenderer and get rid of FirRenderer.RenderMode
2022-07-14 09:38:42 +00:00
Mikhail Glukhikh
e484a4a946
Make ConeContractRenderer a renderer component
2022-07-14 09:38:41 +00:00
Mikhail Glukhikh
31a46866b6
Extract separate FirPropertyAccessorRenderer
2022-07-14 09:38:41 +00:00
Mikhail Glukhikh
9f1f777e0d
Extract separate FirValueParameterRenderer
2022-07-14 09:38:40 +00:00
Mikhail Glukhikh
76d5d3a2ec
Extract separate FirModifierRenderer
2022-07-14 09:38:39 +00:00
Mikhail Glukhikh
3fe35e6997
Extract separate FirCallArgumentsRenderer
2022-07-14 09:38:39 +00:00
Mikhail Glukhikh
abfa33b200
Get rid of mode argument in FirElement.render(withType)
2022-07-14 09:38:38 +00:00
Mikhail Glukhikh
7c27e6f843
FirRenderer: partially get rid of RenderMode
2022-07-14 09:38:37 +00:00
Mikhail Glukhikh
9890066b72
Extract separate FirPackageDirectiveRenderer
2022-07-14 09:38:36 +00:00
Mikhail Glukhikh
bc49107d25
Extract separate FirDeclarationRenderer
2022-07-14 09:38:36 +00:00
Mikhail Glukhikh
5bb4a0ccda
FirRenderer: drop effectively unused renderDeclarationOrigin parameter
2022-07-14 09:38:35 +00:00
Mikhail Glukhikh
089044e5b0
FirRenderer: get rid of direct Visitor usages
2022-07-14 09:38:34 +00:00
Mikhail Glukhikh
998ed8849f
FirRenderer: drop effectively unused renderLambdaBodies parameter
2022-07-14 09:38:34 +00:00
Mikhail Glukhikh
a82baf87cb
FIR renderer: extract separate ConeTypeRenderer
2022-07-14 09:38:33 +00:00
Mikhail Glukhikh
591143be7c
FIR renderer: introduce separate body & annotation renderers
2022-07-14 09:38:32 +00:00
Mikhail Glukhikh
f64a7d3ff9
FirRenderer: extract separate printer & visitor
2022-07-14 09:38:32 +00:00
Mikhail Glukhikh
38d6f3d548
Move FirRenderer to separate package
2022-07-14 09:38:31 +00:00
Ilya Kirillov
8f89f1b368
[Analysis API] add info about context receivers to the Analysis API
2022-07-05 10:34:28 +02:00
Mikhail Glukhikh
31ec10142b
FirRenderer: add renderAllModifiers and renderDetailedTypeReferences
...
Related to KT-52020
2022-06-29 16:50:04 +00:00
Ilya Kirillov
1915a1029f
[Analysis API, FIR] optimize KtSymbol requests for declaration statuses
...
resolvedStatus is not needed for the most calls while it may be expensive to compute as it requires running declaration resolve.
2022-06-28 12:30:05 +02:00
Dmitriy Novozhilov
80223bd555
[FIR] Fix determination of which type is FIR type in tree generator
...
^KT-52832 Fixed
2022-06-21 14:10:36 +00:00
Ivan Kochurkin
37ccd85e59
[FIR] Use coneType instead of coneTypeSafe<ConeKotlinType> in checkers and fir2ir
2022-06-17 23:26:21 +00:00
Ivan Kochurkin
ca222b9c31
[FIR] Create error type for FirErrorLoop during initialization
2022-06-17 23:26:20 +00:00
Ivan Kochurkin
a3647bb4ff
[FIR] FirRenderer: render annotations for block and resolvedQualifier
2022-06-17 23:26:18 +00:00
Ivan Kochurkin
fd2b4fd497
[FIR] Fix false positive USELESS_CAST on stub types, ^KT-50293 Fixed
2022-06-17 23:26:18 +00:00
Ivan Kochurkin
9d6f88469a
[FIR] Use @file:Suppress("DuplicatedCode") for generated fir impl nodes
...
Get rid of unwanted warnings in IntelliJ
2022-06-17 23:26:17 +00:00
mcpiroman
c11d01bebb
Extract some common source generator logic from FIR tree generator
2022-06-13 18:58:05 +02:00
Dmitriy Novozhilov
a85d25d7a6
[FIR] Rename UnderAnnotatedWith predicate to AncestorAnnotatedWith
2022-06-07 14:12:26 +00:00
Dmitriy Novozhilov
83d0a3e7a3
[FIR] Extract FirPluginKey into :core:compiler.common and rename it to GeneratedDeclarationKey
...
This is needed to avoid dependency on :compiler:fir:fir2ir module in
backend parts of compiler plugins. It will allow to publish those
parts into jars for IDE, where they are needed for working of debugger
and bytecode toolwindow
2022-06-07 14:12:25 +00:00
Dmitriy Novozhilov
ae0bc1c078
[FIR] Generate copy builder for FirTypeParameter
2022-06-07 14:12:24 +00:00
Dmitriy Novozhilov
fb57e1ecd5
[FIR] Add two kinds of Java origin to distinguish source and library declarations
2022-06-07 14:12:23 +00:00
Dmitriy Novozhilov
23c69f8d17
[FIR] Add to new types of annotation predicates
...
- `ParentAnnotatedWith` matches declarations, which parent is annotated
- `HasAnnotatedWith` matches declarations, which have at least one
direct child with annotation
Also, `DeclarationPredicate.Any` is removed, because there is no
intention to support lookup for all declarations in module
^KT-52486 Fixed
2022-06-07 14:12:22 +00:00
Dmitriy Novozhilov
7048cac770
[FIR] Move FirPredicateBasedProvider to :compiler:fir:tree module
2022-06-07 14:12:17 +00:00
Dmitriy Novozhilov
b948eaef4b
[FIR] Add ability to register session components from FIR plugins
2022-06-07 14:12:17 +00:00
Dmitriy Novozhilov
c7e3da8709
[FIR] Extend DeclarationPredicate DSL
2022-06-07 14:12:13 +00:00
Nikolay Lunyak
0bc34a9e5a
[FIR] Add some helper functions for dynamics
2022-06-02 13:47:31 +00:00
Mikhail Glukhikh
eaa77b5af6
[FIR JS] Generate dynamic FIRs via DynamicScope
2022-06-02 13:47:26 +00:00
Nikolay Lunyak
611691ec70
[FIR JS] Support smart casts for dynamic
2022-06-02 13:47:25 +00:00
Denis.Zharkov
461d91a10e
FIR: Rework checking dispatch receivers applicability
...
Using `ownerLookupTag` might be wrong in case of private constuctors
of inner classes: their owner is an Inner class, but expected
dispach receiver is Outer
2022-06-01 16:02:31 +00:00
Ivan Kochurkin
ad7c213ab2
[FIR] Initialize type for annotation arguments during deserialization
...
Get rid of IrErrorTypeImpl creating in FIR2IR
2022-05-29 23:41:23 +03:00
Yahor Berdnikau
cf2d03b914
Move common configuration from /build.gradle.kts into plugin
...
Move all common to all projects configuration from root build.gradle.kts
into common-configuration convention plugin.
2022-05-24 07:58:36 +00:00
Dmitriy Novozhilov
d66748d011
[FIR] Extract expect actual matching into separate phase
2022-05-20 13:33:04 +00:00