Sergey Bogolepov
10e4d34868
[Swift export][KT-65672] Add SIR node for import declaration
2024-02-09 10:15:50 +00:00
Sergey Bogolepov
f5b273a6d9
[Swift export][KT-65672] Update SwiftExportRunner
...
1. Add a trivial logger interface as a way to communicate with environment
2. Add a settings key for bridge module name.
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
591e98a947
[KT-63275] Generate wrapper bodies in the SwiftExportExtension
2024-01-12 15:06:18 +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
Sergey Bogolepov
d54877be87
[KT-63275] Prepare SirAsSwiftSourcesPrinter for non-empty bodies
2024-01-12 15:06:18 +00:00
Dmitrii Gridin
d828a646cf
[Analysis API] move allKtFiles util from LL FIR module
...
^KT-64805
2024-01-10 22:07:03 +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
Sergey Bogolepov
00caf0f1e1
[Swift Export] Check SIR validity in pass tests
2023-12-14 12:38:12 +00:00
Sergey Bogolepov
9fde7e0d35
[Swift Export] Create infrastructure for SIR validation
2023-12-14 12:38:12 +00:00
Sergey Bogolepov
01976990e8
[Swift Export] Use ExportedBridge instead of ExportForCppRuntime
...
ExportedBridge annotation actually does what we need in Swift Export.
Unlike ExportForCppRuntime, it prevents symbol from DCE.
2023-12-13 14:09:58 +00:00
Artem Olkov
5fcdd4a9f6
KT-63748: Pack Swift Export Frontend into compiler plugin
...
Co-authored-by: Sergej Jaskiewicz <jaskiewiczs@icloud.com >
Merge-request: KT-MR-13351
Merged-by: Artem Olkov <artem.olkov@jetbrains.com >
2023-12-13 10:40:38 +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
e8459793b7
[SIR] Use SirTransformerVoid for ForeignIntoSwiftFunctionTranslationPass
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
1bc2ac2c87
[SIR] Use SirVisitorVoid i/o SirVisitor for SirAsSwiftSourcesPrinter
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
6c4a6e2a02
turn on explicitApi for SIR modules
...
Merge-request: KT-MR-13448
Merged-by: Artem Olkov <artem.olkov@jetbrains.com >
2023-12-12 09:02:55 +00:00
Artem Olkov
6dc56158f9
Add gradle task that executes all tests from all SIR related modules
...
Merge-request: KT-MR-13410
Merged-by: Artem Olkov <artem.olkov@jetbrains.com >
2023-12-08 15:14:29 +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
1f4099833a
KT-63269: add dependency on dist for sir-analysis-api tests, as they are dependent on JVM dist
...
Merge-request: KT-MR-13142
Merged-by: Artem Olkov <artem.olkov@jetbrains.com >
2023-11-28 18:00:43 +00:00
Sergey Bogolepov
58bef34b9c
[Swift Export] Rename tests generation tool
...
Now it generates test-cases for sir-compiler-bridges as well,
so it makes sense to move away from Analysis API in its name.
2023-11-28 18:00:43 +00:00
Sergey Bogolepov
fe9ab0a1fc
[Swift Export] KT-63516
...
Add a sir-compiler-bridge module that adds Kotlin and C bridges
for SIR. As SIR is still WIP, the module accepts `BridgeRequest`
instances instead of SIR elements.
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