Sergej Jaskiewicz
8c6da9fddb
[FIR/IR generator] Deduplicate interface/abstract class configuration
2023-10-18 12:39:39 +00:00
Sergej Jaskiewicz
9a4c28498c
[FIR generator] Deduplicate the logic of needPureAbstractElement
2023-10-18 11:12:55 +00:00
Sergej Jaskiewicz
7ab4ca6f51
[IR generator] Inherit Element from AbstractElement
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-10-16 22:56:36 +00:00
Sergej Jaskiewicz
f9d17a2d51
[IR generator] Inherit Field from AbstractField
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-10-16 22:56:36 +00:00
Sergej Jaskiewicz
15751333e3
[IR generator] Introduce constants for List-like types
2023-10-16 22:56:36 +00:00
Sergej Jaskiewicz
df0f86bf8d
[FIR generator] Use a single list of parent TypeRefs for elements
...
(Instead of storing the list of parent elements + the map of parent
arguments)
2023-10-13 10:11:38 +00:00
Sergej Jaskiewicz
04ac4b71a3
[FIR generator] Replace AbstractElement with ElemenOrRef
...
In the FIR generator, the `AbstractElement` class was used to
represent either an element type without type arguments applied
(using the `Element` subclass), or an element type with applied type
arguments (using the `ElementWithArguments` subclass).
Instead, it is more logical to use the `Element` class to always
represent a non-parameterized element type, and for a parameterized
element type use the `ElementRef` class, just like we do
in the IR generator.
2023-10-12 11:36:20 +00:00
Sergej Jaskiewicz
a909a28f29
[FIR generator] Use more type-safe field builders
2023-10-12 08:24:12 +00:00
Sergej Jaskiewicz
8be455649c
[FIR generator] Use TypeVariable instead of TypeArgument for TPs
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-10-12 08:24:12 +00:00
Sergej Jaskiewicz
8798fdeb82
[FIR generator] Use TypeRef for denoting types
...
(instead of `Type` and `Importable`)
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-10-11 11:16:08 +00:00
Sergej Jaskiewicz
3a5e69d651
[FIR/IR generator] Inherit TypeRef from Importable
...
This is the first step to replace the usages of `Importable`
in the FIR generator with `TypeRef`.
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-22 19:46:14 +00:00
Sergej Jaskiewicz
a995c522f7
[IR generator] Factor out TypeRef to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-22 19:46:14 +00:00
Sergej Jaskiewicz
d5394db185
[FIR generator] Factor out AbstractElement to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-22 19:46:14 +00:00
Sergej Jaskiewicz
977e316489
[FIR generator] Factor out TypeArgument to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-22 19:46:14 +00:00
Sergej Jaskiewicz
0dd01279da
[FIR generator] Move Implementation.Kind to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-19 22:19:37 +00:00
Sergej Jaskiewicz
e62343427d
[FIR generator] Move Field and FieldContainer to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-19 22:19:37 +00:00
Sergej Jaskiewicz
982b9221b4
[FIR generator] Move ArbitrarilyImportable class to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-19 22:19:37 +00:00
Sergej Jaskiewicz
7a6bffaabb
[FIR generator] Move Importable interface to common module
...
This is a step towards commonizing the code generator between
FIR and IR: KT-61970
2023-09-19 22:19:37 +00:00