Commit Graph

26 Commits

Author SHA1 Message Date
Sergey Bogolepov 10e4d34868 [Swift export][KT-65672] Add SIR node for import declaration 2024-02-09 10:15:50 +00:00
Gleb Lukianets f262247b2b [Swift Export] KT-65008: support simple top-level properties
Merge-request: KT-MR-14131
Merged-by: Gleb Lukianets <Gleb.Lukianets@jetbrains.com>
2024-02-05 16:29:37 +00:00
Artem Olkov b317a88536 add Initial support for comments in SIR #KT-65174 Fixed
Merge-request: KT-MR-14007
Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
2024-01-29 14:22:42 +00:00
Artem Olkov de6a27aeeb KT-65123: move Swift Export Compiler Plugin into swift-export-standalone module
Merge-request: KT-MR-14031
Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
2024-01-29 10:32:09 +00:00
Artem Olkov 37a8723a79 KT-64931: add convertion of kotlin top-lvl functions into swift static functions
Merge-request: KT-MR-13878
Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
2024-01-17 20:30:04 +00:00
Sergey Bogolepov cb19e291a3 [KT-63275] Implement trivial bodies in SIR functions 2024-01-12 15:06:18 +00:00
Sergey Bogolepov 5dd1d7c9c1 [KT-63275] Add a nullable body property to SIR functions 2024-01-12 15:06:18 +00:00
Dmitrii Gridin b6d373d8e5 Update copyright to 2024 2024-01-05 13:43:17 +00:00
cristiangarcia 5a1fb78fcd Declare generated SourceSets correctly
Allow Gradle to keep the track of the task generating the sources
KTI-1502 Fixed
2023-12-24 00:01:59 +00:00
Sergej Jaskiewicz f844a86057 [utils] Introduce the bind function and use it throughout 2023-12-13 10:04:45 +00:00
Gleb Lukianets 64ebec7955 [Swift Export]: KT-63280: Package inflation
Merge-request: KT-MR-13331
Merged-by: Gleb Lukianets <Gleb.Lukianets@jetbrains.com>
2023-12-12 16:05:22 +00:00
Sergej Jaskiewicz dada4a60bd [SIR] Use shorter parameter names for some elements in visitor methods 2023-12-12 14:27:57 +00:00
Sergej Jaskiewicz cab87eba21 [SIR, FIR generators] Add KDocs for visitor-related methods of elements 2023-12-12 14:27:57 +00:00
Sergej Jaskiewicz 1bed6a063f [SIR] Add SirTransformerVoid class
This is convenient for cases when the transformer has no context to pass
to each method
2023-12-12 14:27:57 +00:00
Sergej Jaskiewicz 80847b9ee2 [SIR generator] Add SirVisitorVoid class
This is convenient for cases when the visitor has no context to pass to
each method
2023-12-12 14:27:57 +00:00
Sergej Jaskiewicz 80c9eae409 [tree generators] Factor out common transformer printing logic 2023-12-12 14:27:57 +00:00
Artem Olkov 38d5e56530 KT-63273: Swift IR passes to support functions with numeric parameters
Merge-request: KT-MR-13290
Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
2023-12-08 14:07:42 +00:00
Sergej Jaskiewicz 701a48b211 [SIR] Fix transformer auto-generation
The default implementation of a transformer method should delegate to
`parentInVisitor`
2023-12-08 10:09:09 +00:00
Sergej Jaskiewicz 0d2032f3ef [SIR] Auto-generate the Swift IR tree
Co-authored-by: Gleb Lukianets <gleb.lukianets@jetbrains.com>
2023-12-08 10:09:09 +00:00
Sergey Bogolepov fea73ae64a [Swift Export] Minor tests fixes and adjustments 2023-11-29 14:04:00 +00:00
Sergey Bogolepov 5eeb82bb6f [Swift Export] Update sir-compiler-bridge to use SIR
Now that SIR has finally landed in the repository, we can remove
unnecessary entities from the bridge generator.
2023-11-29 14:03:59 +00:00
Artem Olkov a040954f68 rrn/rd/KT-63270-swift-printer
KT-63270: add swift printing capabilities to SIR

Co-authored-by: Artem Olkov <artem.olkov@jetbrains.com>
Co-authored-by: Sergej Jaskiewicz <jaskiewiczs@icloud.com>


Merge-request: KT-MR-13191
Merged-by: Gleb Lukianets <Gleb.Lukianets@jetbrains.com>
2023-11-29 14:03:59 +00:00
Sergey Bogolepov ec82d54ef7 [Swift Export] Fix test infrastructure according to the review 2023-11-28 18:00:43 +00:00
Gleb Lukianets c3725ec8c8 rrn/rd/KT-63266/sir-gen
Swift Export: generated sir snapshot

Merge-request: KT-MR-13128
Merged-by: Gleb Lukianets <Gleb.Lukianets@jetbrains.com>
2023-11-28 18:00:43 +00:00
Artem Olkov 7c15e3f229 KT-63269: implementation for SIRGenerator with top-level functions
KT-63269: add test generator

Merge-request: KT-MR-12945
Merged-by: Artem Olkov <artem.olkov@jetbrains.com>
2023-11-28 18:00:43 +00:00
Sergey Bogolepov cc14f11e2a [Swift Export] initial infrastructure for Swift IR
New modules 'sir', 'sir-passes', and 'sir-analysis-api' were added under
'native:swift' for creating and manipulating Swift IR elements.

* `sir` contains the implementation of Swift IR.
* `sir-analysis-api` contains translation from Analysis API to SIR.
* `sir-passses` contains transformation passes.

This groundwork will allow to progress with the Swift IR.
2023-11-28 18:00:43 +00:00