aix 0.0.15 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/Aix.podspec +32 -0
  2. package/LICENSE +2 -2
  3. package/README.md +165 -33
  4. package/android/CMakeLists.txt +32 -0
  5. package/android/build.gradle +148 -0
  6. package/android/fix-prefab.gradle +51 -0
  7. package/android/gradle.properties +5 -0
  8. package/android/src/main/AndroidManifest.xml +2 -0
  9. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  10. package/android/src/main/java/com/aix/AixPackage.kt +29 -0
  11. package/android/src/main/java/com/aix/HybridAix.kt +27 -0
  12. package/ios/Bridge.h +8 -0
  13. package/ios/HybridAix.swift +1072 -0
  14. package/ios/HybridAixCellView.swift +174 -0
  15. package/ios/HybridAixComposer.swift +119 -0
  16. package/lib/commonjs/aix.js +25 -0
  17. package/lib/commonjs/aix.js.map +1 -0
  18. package/lib/commonjs/fade-in/createUsePool.js +50 -0
  19. package/lib/commonjs/fade-in/createUsePool.js.map +1 -0
  20. package/lib/commonjs/fade-in/createUseStaggered.js +82 -0
  21. package/lib/commonjs/fade-in/createUseStaggered.js.map +1 -0
  22. package/lib/commonjs/fade-in/index.js +78 -0
  23. package/lib/commonjs/fade-in/index.js.map +1 -0
  24. package/lib/commonjs/footer.js +28 -0
  25. package/lib/commonjs/footer.js.map +1 -0
  26. package/lib/commonjs/index.js +48 -0
  27. package/lib/commonjs/index.js.map +1 -0
  28. package/lib/commonjs/package.json +1 -0
  29. package/lib/commonjs/views/aix.nitro.js +6 -0
  30. package/lib/commonjs/views/aix.nitro.js.map +1 -0
  31. package/lib/module/aix.js +20 -0
  32. package/lib/module/aix.js.map +1 -0
  33. package/lib/module/fade-in/createUsePool.js +46 -0
  34. package/lib/module/fade-in/createUsePool.js.map +1 -0
  35. package/lib/module/fade-in/createUseStaggered.js +79 -0
  36. package/lib/module/fade-in/createUseStaggered.js.map +1 -0
  37. package/lib/module/fade-in/index.js +74 -0
  38. package/lib/module/fade-in/index.js.map +1 -0
  39. package/lib/module/footer.js +23 -0
  40. package/lib/module/footer.js.map +1 -0
  41. package/lib/module/index.js +13 -0
  42. package/lib/module/index.js.map +1 -0
  43. package/lib/module/package.json +1 -0
  44. package/lib/module/views/aix.nitro.js +4 -0
  45. package/lib/module/views/aix.nitro.js.map +1 -0
  46. package/lib/typescript/src/aix.d.ts +14 -0
  47. package/lib/typescript/src/aix.d.ts.map +1 -0
  48. package/lib/typescript/src/fade-in/createUsePool.d.ts +5 -0
  49. package/lib/typescript/src/fade-in/createUsePool.d.ts.map +1 -0
  50. package/lib/typescript/src/fade-in/createUseStaggered.d.ts +2 -0
  51. package/lib/typescript/src/fade-in/createUseStaggered.d.ts.map +1 -0
  52. package/lib/typescript/src/fade-in/index.d.ts +5 -0
  53. package/lib/typescript/src/fade-in/index.d.ts.map +1 -0
  54. package/lib/typescript/src/footer.d.ts +5 -0
  55. package/lib/typescript/src/footer.d.ts.map +1 -0
  56. package/lib/typescript/src/index.d.ts +10 -0
  57. package/lib/typescript/src/index.d.ts.map +1 -0
  58. package/lib/typescript/src/views/aix.nitro.d.ts +101 -0
  59. package/lib/typescript/src/views/aix.nitro.d.ts.map +1 -0
  60. package/nitro.json +26 -0
  61. package/nitrogen/generated/.gitattributes +1 -0
  62. package/nitrogen/generated/android/Aix+autolinking.cmake +91 -0
  63. package/nitrogen/generated/android/Aix+autolinking.gradle +27 -0
  64. package/nitrogen/generated/android/AixOnLoad.cpp +70 -0
  65. package/nitrogen/generated/android/AixOnLoad.hpp +25 -0
  66. package/nitrogen/generated/android/c++/JAixAdditionalContentInsets.hpp +61 -0
  67. package/nitrogen/generated/android/c++/JAixAdditionalContentInsetsProp.hpp +63 -0
  68. package/nitrogen/generated/android/c++/JAixScrollIndicatorInsetValue.hpp +61 -0
  69. package/nitrogen/generated/android/c++/JAixScrollIndicatorInsets.hpp +63 -0
  70. package/nitrogen/generated/android/c++/JAixScrollOnFooterSizeUpdate.hpp +65 -0
  71. package/nitrogen/generated/android/c++/JHybridAixCellViewSpec.cpp +65 -0
  72. package/nitrogen/generated/android/c++/JHybridAixCellViewSpec.hpp +68 -0
  73. package/nitrogen/generated/android/c++/JHybridAixComposerSpec.cpp +48 -0
  74. package/nitrogen/generated/android/c++/JHybridAixComposerSpec.hpp +65 -0
  75. package/nitrogen/generated/android/c++/JHybridAixSpec.cpp +137 -0
  76. package/nitrogen/generated/android/c++/JHybridAixSpec.hpp +79 -0
  77. package/nitrogen/generated/android/c++/views/JHybridAixCellViewStateUpdater.cpp +60 -0
  78. package/nitrogen/generated/android/c++/views/JHybridAixCellViewStateUpdater.hpp +49 -0
  79. package/nitrogen/generated/android/c++/views/JHybridAixComposerStateUpdater.cpp +53 -0
  80. package/nitrogen/generated/android/c++/views/JHybridAixComposerStateUpdater.hpp +49 -0
  81. package/nitrogen/generated/android/c++/views/JHybridAixStateUpdater.cpp +80 -0
  82. package/nitrogen/generated/android/c++/views/JHybridAixStateUpdater.hpp +49 -0
  83. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixAdditionalContentInsets.kt +41 -0
  84. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixAdditionalContentInsetsProp.kt +41 -0
  85. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixOnLoad.kt +35 -0
  86. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollIndicatorInsetValue.kt +41 -0
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollIndicatorInsets.kt +41 -0
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/AixScrollOnFooterSizeUpdate.kt +44 -0
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixCellViewSpec.kt +65 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixComposerSpec.kt +55 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/HybridAixSpec.kt +101 -0
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixCellViewManager.kt +50 -0
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixCellViewStateUpdater.kt +23 -0
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixComposerManager.kt +50 -0
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixComposerStateUpdater.kt +23 -0
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixManager.kt +50 -0
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/aix/views/HybridAixStateUpdater.kt +23 -0
  98. package/nitrogen/generated/ios/Aix+autolinking.rb +60 -0
  99. package/nitrogen/generated/ios/Aix-Swift-Cxx-Bridge.cpp +67 -0
  100. package/nitrogen/generated/ios/Aix-Swift-Cxx-Bridge.hpp +222 -0
  101. package/nitrogen/generated/ios/Aix-Swift-Cxx-Umbrella.hpp +70 -0
  102. package/nitrogen/generated/ios/AixAutolinking.mm +49 -0
  103. package/nitrogen/generated/ios/AixAutolinking.swift +55 -0
  104. package/nitrogen/generated/ios/c++/HybridAixCellViewSpecSwift.cpp +11 -0
  105. package/nitrogen/generated/ios/c++/HybridAixCellViewSpecSwift.hpp +80 -0
  106. package/nitrogen/generated/ios/c++/HybridAixComposerSpecSwift.cpp +11 -0
  107. package/nitrogen/generated/ios/c++/HybridAixComposerSpecSwift.hpp +69 -0
  108. package/nitrogen/generated/ios/c++/HybridAixSpecSwift.cpp +11 -0
  109. package/nitrogen/generated/ios/c++/HybridAixSpecSwift.hpp +142 -0
  110. package/nitrogen/generated/ios/c++/views/HybridAixCellViewComponent.mm +101 -0
  111. package/nitrogen/generated/ios/c++/views/HybridAixComponent.mm +126 -0
  112. package/nitrogen/generated/ios/c++/views/HybridAixComposerComponent.mm +92 -0
  113. package/nitrogen/generated/ios/swift/AixAdditionalContentInsets.swift +47 -0
  114. package/nitrogen/generated/ios/swift/AixAdditionalContentInsetsProp.swift +71 -0
  115. package/nitrogen/generated/ios/swift/AixScrollIndicatorInsetValue.swift +47 -0
  116. package/nitrogen/generated/ios/swift/AixScrollIndicatorInsets.swift +71 -0
  117. package/nitrogen/generated/ios/swift/AixScrollOnFooterSizeUpdate.swift +89 -0
  118. package/nitrogen/generated/ios/swift/HybridAixCellViewSpec.swift +57 -0
  119. package/nitrogen/generated/ios/swift/HybridAixCellViewSpec_cxx.swift +151 -0
  120. package/nitrogen/generated/ios/swift/HybridAixComposerSpec.swift +56 -0
  121. package/nitrogen/generated/ios/swift/HybridAixComposerSpec_cxx.swift +131 -0
  122. package/nitrogen/generated/ios/swift/HybridAixSpec.swift +63 -0
  123. package/nitrogen/generated/ios/swift/HybridAixSpec_cxx.swift +292 -0
  124. package/nitrogen/generated/shared/c++/AixAdditionalContentInsets.hpp +79 -0
  125. package/nitrogen/generated/shared/c++/AixAdditionalContentInsetsProp.hpp +81 -0
  126. package/nitrogen/generated/shared/c++/AixScrollIndicatorInsetValue.hpp +79 -0
  127. package/nitrogen/generated/shared/c++/AixScrollIndicatorInsets.hpp +81 -0
  128. package/nitrogen/generated/shared/c++/AixScrollOnFooterSizeUpdate.hpp +83 -0
  129. package/nitrogen/generated/shared/c++/HybridAixCellViewSpec.cpp +24 -0
  130. package/nitrogen/generated/shared/c++/HybridAixCellViewSpec.hpp +65 -0
  131. package/nitrogen/generated/shared/c++/HybridAixComposerSpec.cpp +21 -0
  132. package/nitrogen/generated/shared/c++/HybridAixComposerSpec.hpp +62 -0
  133. package/nitrogen/generated/shared/c++/HybridAixSpec.cpp +36 -0
  134. package/nitrogen/generated/shared/c++/HybridAixSpec.hpp +85 -0
  135. package/nitrogen/generated/shared/c++/views/HybridAixCellViewComponent.cpp +99 -0
  136. package/nitrogen/generated/shared/c++/views/HybridAixCellViewComponent.hpp +108 -0
  137. package/nitrogen/generated/shared/c++/views/HybridAixComponent.cpp +159 -0
  138. package/nitrogen/generated/shared/c++/views/HybridAixComponent.hpp +117 -0
  139. package/nitrogen/generated/shared/c++/views/HybridAixComposerComponent.cpp +75 -0
  140. package/nitrogen/generated/shared/c++/views/HybridAixComposerComponent.hpp +106 -0
  141. package/nitrogen/generated/shared/json/AixCellViewConfig.json +11 -0
  142. package/nitrogen/generated/shared/json/AixComposerConfig.json +9 -0
  143. package/nitrogen/generated/shared/json/AixConfig.json +16 -0
  144. package/package.json +113 -14
  145. package/src/aix.tsx +43 -0
  146. package/src/fade-in/createUsePool.ts +46 -0
  147. package/src/fade-in/createUseStaggered.ts +82 -0
  148. package/src/fade-in/index.tsx +97 -0
  149. package/src/footer.tsx +30 -0
  150. package/src/index.ts +20 -16
  151. package/src/views/aix.nitro.ts +148 -0
  152. package/docs/API.md +0 -288
  153. package/jest.config.js +0 -17
  154. package/lib/__tests__/deferredIterable.test.d.ts +0 -1
  155. package/lib/__tests__/deferredIterable.test.js +0 -108
  156. package/lib/__tests__/filter.test.d.ts +0 -1
  157. package/lib/__tests__/filter.test.js +0 -53
  158. package/lib/__tests__/flatMap.test.d.ts +0 -1
  159. package/lib/__tests__/flatMap.test.js +0 -77
  160. package/lib/__tests__/lookahead.test.d.ts +0 -1
  161. package/lib/__tests__/lookahead.test.js +0 -57
  162. package/lib/__tests__/map.test.d.ts +0 -1
  163. package/lib/__tests__/map.test.js +0 -53
  164. package/lib/__tests__/merge.test.d.ts +0 -1
  165. package/lib/__tests__/merge.test.js +0 -55
  166. package/lib/__tests__/reduce.test.d.ts +0 -1
  167. package/lib/__tests__/reduce.test.js +0 -52
  168. package/lib/__tests__/spanAll.test.d.ts +0 -1
  169. package/lib/__tests__/spanAll.test.js +0 -120
  170. package/lib/concat.d.ts +0 -4
  171. package/lib/concat.js +0 -126
  172. package/lib/deferred.d.ts +0 -9
  173. package/lib/deferred.js +0 -18
  174. package/lib/deferredIterable.d.ts +0 -22
  175. package/lib/deferredIterable.js +0 -111
  176. package/lib/filter.d.ts +0 -7
  177. package/lib/filter.js +0 -99
  178. package/lib/flatMap.d.ts +0 -1
  179. package/lib/flatMap.js +0 -119
  180. package/lib/fromEvent.d.ts +0 -5
  181. package/lib/fromEvent.js +0 -13
  182. package/lib/index.d.ts +0 -16
  183. package/lib/index.js +0 -34
  184. package/lib/insert.d.ts +0 -4
  185. package/lib/insert.js +0 -113
  186. package/lib/interval.d.ts +0 -4
  187. package/lib/interval.js +0 -64
  188. package/lib/iterableToArray.d.ts +0 -1
  189. package/lib/iterableToArray.js +0 -87
  190. package/lib/iteratorToIterable.d.ts +0 -6
  191. package/lib/iteratorToIterable.js +0 -70
  192. package/lib/lookahead.d.ts +0 -10
  193. package/lib/lookahead.js +0 -78
  194. package/lib/map.d.ts +0 -4
  195. package/lib/map.js +0 -98
  196. package/lib/merge.d.ts +0 -6
  197. package/lib/merge.js +0 -21
  198. package/lib/of.d.ts +0 -3
  199. package/lib/of.js +0 -5
  200. package/lib/reduce.d.ts +0 -4
  201. package/lib/reduce.js +0 -92
  202. package/lib/restToIterable.d.ts +0 -4
  203. package/lib/restToIterable.js +0 -73
  204. package/lib/spanAll.d.ts +0 -1
  205. package/lib/spanAll.js +0 -29
  206. package/lib/tap.d.ts +0 -4
  207. package/lib/tap.js +0 -96
  208. package/lib/toCallbacks.d.ts +0 -11
  209. package/lib/toCallbacks.js +0 -97
  210. package/lib/zip.d.ts +0 -4
  211. package/lib/zip.js +0 -75
  212. package/src/__tests__/deferredIterable.test.ts +0 -22
  213. package/src/__tests__/filter.test.ts +0 -10
  214. package/src/__tests__/flatMap.test.ts +0 -12
  215. package/src/__tests__/lookahead.test.ts +0 -9
  216. package/src/__tests__/map.test.ts +0 -10
  217. package/src/__tests__/merge.test.ts +0 -9
  218. package/src/__tests__/reduce.test.ts +0 -10
  219. package/src/__tests__/spanAll.test.ts +0 -17
  220. package/src/concat.ts +0 -13
  221. package/src/deferred.ts +0 -16
  222. package/src/deferredIterable.ts +0 -111
  223. package/src/filter.ts +0 -16
  224. package/src/flatMap.ts +0 -9
  225. package/src/fromEvent.ts +0 -16
  226. package/src/insert.ts +0 -13
  227. package/src/interval.ts +0 -20
  228. package/src/iterableToArray.ts +0 -7
  229. package/src/iteratorToIterable.ts +0 -12
  230. package/src/lookahead.ts +0 -27
  231. package/src/map.ts +0 -11
  232. package/src/merge.ts +0 -18
  233. package/src/of.ts +0 -4
  234. package/src/reduce.ts +0 -12
  235. package/src/restToIterable.ts +0 -8
  236. package/src/spanAll.ts +0 -26
  237. package/src/tap.ts +0 -11
  238. package/src/toCallbacks.ts +0 -27
  239. package/src/zip.ts +0 -19
  240. package/tsconfig.json +0 -63
  241. package/yarn.lock +0 -3514
@@ -0,0 +1,67 @@
1
+ ///
2
+ /// Aix-Swift-Cxx-Bridge.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "Aix-Swift-Cxx-Bridge.hpp"
9
+
10
+ // Include C++ implementation defined types
11
+ #include "Aix-Swift-Cxx-Umbrella.hpp"
12
+ #include "HybridAixCellViewSpecSwift.hpp"
13
+ #include "HybridAixComposerSpecSwift.hpp"
14
+ #include "HybridAixSpecSwift.hpp"
15
+ #include <NitroModules/NitroDefines.hpp>
16
+
17
+ namespace margelo::nitro::aix::bridge::swift {
18
+
19
+ // pragma MARK: std::shared_ptr<HybridAixSpec>
20
+ std::shared_ptr<HybridAixSpec> create_std__shared_ptr_HybridAixSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
21
+ Aix::HybridAixSpec_cxx swiftPart = Aix::HybridAixSpec_cxx::fromUnsafe(swiftUnsafePointer);
22
+ return std::make_shared<margelo::nitro::aix::HybridAixSpecSwift>(swiftPart);
23
+ }
24
+ void* NON_NULL get_std__shared_ptr_HybridAixSpec_(std__shared_ptr_HybridAixSpec_ cppType) {
25
+ std::shared_ptr<margelo::nitro::aix::HybridAixSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::aix::HybridAixSpecSwift>(cppType);
26
+ #ifdef NITRO_DEBUG
27
+ if (swiftWrapper == nullptr) [[unlikely]] {
28
+ throw std::runtime_error("Class \"HybridAixSpec\" is not implemented in Swift!");
29
+ }
30
+ #endif
31
+ Aix::HybridAixSpec_cxx& swiftPart = swiftWrapper->getSwiftPart();
32
+ return swiftPart.toUnsafe();
33
+ }
34
+
35
+ // pragma MARK: std::shared_ptr<HybridAixCellViewSpec>
36
+ std::shared_ptr<HybridAixCellViewSpec> create_std__shared_ptr_HybridAixCellViewSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
37
+ Aix::HybridAixCellViewSpec_cxx swiftPart = Aix::HybridAixCellViewSpec_cxx::fromUnsafe(swiftUnsafePointer);
38
+ return std::make_shared<margelo::nitro::aix::HybridAixCellViewSpecSwift>(swiftPart);
39
+ }
40
+ void* NON_NULL get_std__shared_ptr_HybridAixCellViewSpec_(std__shared_ptr_HybridAixCellViewSpec_ cppType) {
41
+ std::shared_ptr<margelo::nitro::aix::HybridAixCellViewSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::aix::HybridAixCellViewSpecSwift>(cppType);
42
+ #ifdef NITRO_DEBUG
43
+ if (swiftWrapper == nullptr) [[unlikely]] {
44
+ throw std::runtime_error("Class \"HybridAixCellViewSpec\" is not implemented in Swift!");
45
+ }
46
+ #endif
47
+ Aix::HybridAixCellViewSpec_cxx& swiftPart = swiftWrapper->getSwiftPart();
48
+ return swiftPart.toUnsafe();
49
+ }
50
+
51
+ // pragma MARK: std::shared_ptr<HybridAixComposerSpec>
52
+ std::shared_ptr<HybridAixComposerSpec> create_std__shared_ptr_HybridAixComposerSpec_(void* NON_NULL swiftUnsafePointer) noexcept {
53
+ Aix::HybridAixComposerSpec_cxx swiftPart = Aix::HybridAixComposerSpec_cxx::fromUnsafe(swiftUnsafePointer);
54
+ return std::make_shared<margelo::nitro::aix::HybridAixComposerSpecSwift>(swiftPart);
55
+ }
56
+ void* NON_NULL get_std__shared_ptr_HybridAixComposerSpec_(std__shared_ptr_HybridAixComposerSpec_ cppType) {
57
+ std::shared_ptr<margelo::nitro::aix::HybridAixComposerSpecSwift> swiftWrapper = std::dynamic_pointer_cast<margelo::nitro::aix::HybridAixComposerSpecSwift>(cppType);
58
+ #ifdef NITRO_DEBUG
59
+ if (swiftWrapper == nullptr) [[unlikely]] {
60
+ throw std::runtime_error("Class \"HybridAixComposerSpec\" is not implemented in Swift!");
61
+ }
62
+ #endif
63
+ Aix::HybridAixComposerSpec_cxx& swiftPart = swiftWrapper->getSwiftPart();
64
+ return swiftPart.toUnsafe();
65
+ }
66
+
67
+ } // namespace margelo::nitro::aix::bridge::swift
@@ -0,0 +1,222 @@
1
+ ///
2
+ /// Aix-Swift-Cxx-Bridge.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ // Forward declarations of C++ defined types
11
+ // Forward declaration of `AixAdditionalContentInsetsProp` to properly resolve imports.
12
+ namespace margelo::nitro::aix { struct AixAdditionalContentInsetsProp; }
13
+ // Forward declaration of `AixAdditionalContentInsets` to properly resolve imports.
14
+ namespace margelo::nitro::aix { struct AixAdditionalContentInsets; }
15
+ // Forward declaration of `AixScrollIndicatorInsetValue` to properly resolve imports.
16
+ namespace margelo::nitro::aix { struct AixScrollIndicatorInsetValue; }
17
+ // Forward declaration of `AixScrollIndicatorInsets` to properly resolve imports.
18
+ namespace margelo::nitro::aix { struct AixScrollIndicatorInsets; }
19
+ // Forward declaration of `AixScrollOnFooterSizeUpdate` to properly resolve imports.
20
+ namespace margelo::nitro::aix { struct AixScrollOnFooterSizeUpdate; }
21
+ // Forward declaration of `HybridAixCellViewSpec` to properly resolve imports.
22
+ namespace margelo::nitro::aix { class HybridAixCellViewSpec; }
23
+ // Forward declaration of `HybridAixComposerSpec` to properly resolve imports.
24
+ namespace margelo::nitro::aix { class HybridAixComposerSpec; }
25
+ // Forward declaration of `HybridAixSpec` to properly resolve imports.
26
+ namespace margelo::nitro::aix { class HybridAixSpec; }
27
+
28
+ // Forward declarations of Swift defined types
29
+ // Forward declaration of `HybridAixCellViewSpec_cxx` to properly resolve imports.
30
+ namespace Aix { class HybridAixCellViewSpec_cxx; }
31
+ // Forward declaration of `HybridAixComposerSpec_cxx` to properly resolve imports.
32
+ namespace Aix { class HybridAixComposerSpec_cxx; }
33
+ // Forward declaration of `HybridAixSpec_cxx` to properly resolve imports.
34
+ namespace Aix { class HybridAixSpec_cxx; }
35
+
36
+ // Include C++ defined types
37
+ #include "AixAdditionalContentInsets.hpp"
38
+ #include "AixAdditionalContentInsetsProp.hpp"
39
+ #include "AixScrollIndicatorInsetValue.hpp"
40
+ #include "AixScrollIndicatorInsets.hpp"
41
+ #include "AixScrollOnFooterSizeUpdate.hpp"
42
+ #include "HybridAixCellViewSpec.hpp"
43
+ #include "HybridAixComposerSpec.hpp"
44
+ #include "HybridAixSpec.hpp"
45
+ #include <NitroModules/Result.hpp>
46
+ #include <exception>
47
+ #include <memory>
48
+ #include <optional>
49
+ #include <string>
50
+
51
+ /**
52
+ * Contains specialized versions of C++ templated types so they can be accessed from Swift,
53
+ * as well as helper functions to interact with those C++ types from Swift.
54
+ */
55
+ namespace margelo::nitro::aix::bridge::swift {
56
+
57
+ // pragma MARK: std::optional<double>
58
+ /**
59
+ * Specialized version of `std::optional<double>`.
60
+ */
61
+ using std__optional_double_ = std::optional<double>;
62
+ inline std::optional<double> create_std__optional_double_(const double& value) noexcept {
63
+ return std::optional<double>(value);
64
+ }
65
+ inline bool has_value_std__optional_double_(const std::optional<double>& optional) noexcept {
66
+ return optional.has_value();
67
+ }
68
+ inline double get_std__optional_double_(const std::optional<double>& optional) noexcept {
69
+ return *optional;
70
+ }
71
+
72
+ // pragma MARK: std::optional<bool>
73
+ /**
74
+ * Specialized version of `std::optional<bool>`.
75
+ */
76
+ using std__optional_bool_ = std::optional<bool>;
77
+ inline std::optional<bool> create_std__optional_bool_(const bool& value) noexcept {
78
+ return std::optional<bool>(value);
79
+ }
80
+ inline bool has_value_std__optional_bool_(const std::optional<bool>& optional) noexcept {
81
+ return optional.has_value();
82
+ }
83
+ inline bool get_std__optional_bool_(const std::optional<bool>& optional) noexcept {
84
+ return *optional;
85
+ }
86
+
87
+ // pragma MARK: std::optional<AixScrollOnFooterSizeUpdate>
88
+ /**
89
+ * Specialized version of `std::optional<AixScrollOnFooterSizeUpdate>`.
90
+ */
91
+ using std__optional_AixScrollOnFooterSizeUpdate_ = std::optional<AixScrollOnFooterSizeUpdate>;
92
+ inline std::optional<AixScrollOnFooterSizeUpdate> create_std__optional_AixScrollOnFooterSizeUpdate_(const AixScrollOnFooterSizeUpdate& value) noexcept {
93
+ return std::optional<AixScrollOnFooterSizeUpdate>(value);
94
+ }
95
+ inline bool has_value_std__optional_AixScrollOnFooterSizeUpdate_(const std::optional<AixScrollOnFooterSizeUpdate>& optional) noexcept {
96
+ return optional.has_value();
97
+ }
98
+ inline AixScrollOnFooterSizeUpdate get_std__optional_AixScrollOnFooterSizeUpdate_(const std::optional<AixScrollOnFooterSizeUpdate>& optional) noexcept {
99
+ return *optional;
100
+ }
101
+
102
+ // pragma MARK: std::optional<AixAdditionalContentInsets>
103
+ /**
104
+ * Specialized version of `std::optional<AixAdditionalContentInsets>`.
105
+ */
106
+ using std__optional_AixAdditionalContentInsets_ = std::optional<AixAdditionalContentInsets>;
107
+ inline std::optional<AixAdditionalContentInsets> create_std__optional_AixAdditionalContentInsets_(const AixAdditionalContentInsets& value) noexcept {
108
+ return std::optional<AixAdditionalContentInsets>(value);
109
+ }
110
+ inline bool has_value_std__optional_AixAdditionalContentInsets_(const std::optional<AixAdditionalContentInsets>& optional) noexcept {
111
+ return optional.has_value();
112
+ }
113
+ inline AixAdditionalContentInsets get_std__optional_AixAdditionalContentInsets_(const std::optional<AixAdditionalContentInsets>& optional) noexcept {
114
+ return *optional;
115
+ }
116
+
117
+ // pragma MARK: std::optional<AixAdditionalContentInsetsProp>
118
+ /**
119
+ * Specialized version of `std::optional<AixAdditionalContentInsetsProp>`.
120
+ */
121
+ using std__optional_AixAdditionalContentInsetsProp_ = std::optional<AixAdditionalContentInsetsProp>;
122
+ inline std::optional<AixAdditionalContentInsetsProp> create_std__optional_AixAdditionalContentInsetsProp_(const AixAdditionalContentInsetsProp& value) noexcept {
123
+ return std::optional<AixAdditionalContentInsetsProp>(value);
124
+ }
125
+ inline bool has_value_std__optional_AixAdditionalContentInsetsProp_(const std::optional<AixAdditionalContentInsetsProp>& optional) noexcept {
126
+ return optional.has_value();
127
+ }
128
+ inline AixAdditionalContentInsetsProp get_std__optional_AixAdditionalContentInsetsProp_(const std::optional<AixAdditionalContentInsetsProp>& optional) noexcept {
129
+ return *optional;
130
+ }
131
+
132
+ // pragma MARK: std::optional<AixScrollIndicatorInsetValue>
133
+ /**
134
+ * Specialized version of `std::optional<AixScrollIndicatorInsetValue>`.
135
+ */
136
+ using std__optional_AixScrollIndicatorInsetValue_ = std::optional<AixScrollIndicatorInsetValue>;
137
+ inline std::optional<AixScrollIndicatorInsetValue> create_std__optional_AixScrollIndicatorInsetValue_(const AixScrollIndicatorInsetValue& value) noexcept {
138
+ return std::optional<AixScrollIndicatorInsetValue>(value);
139
+ }
140
+ inline bool has_value_std__optional_AixScrollIndicatorInsetValue_(const std::optional<AixScrollIndicatorInsetValue>& optional) noexcept {
141
+ return optional.has_value();
142
+ }
143
+ inline AixScrollIndicatorInsetValue get_std__optional_AixScrollIndicatorInsetValue_(const std::optional<AixScrollIndicatorInsetValue>& optional) noexcept {
144
+ return *optional;
145
+ }
146
+
147
+ // pragma MARK: std::optional<AixScrollIndicatorInsets>
148
+ /**
149
+ * Specialized version of `std::optional<AixScrollIndicatorInsets>`.
150
+ */
151
+ using std__optional_AixScrollIndicatorInsets_ = std::optional<AixScrollIndicatorInsets>;
152
+ inline std::optional<AixScrollIndicatorInsets> create_std__optional_AixScrollIndicatorInsets_(const AixScrollIndicatorInsets& value) noexcept {
153
+ return std::optional<AixScrollIndicatorInsets>(value);
154
+ }
155
+ inline bool has_value_std__optional_AixScrollIndicatorInsets_(const std::optional<AixScrollIndicatorInsets>& optional) noexcept {
156
+ return optional.has_value();
157
+ }
158
+ inline AixScrollIndicatorInsets get_std__optional_AixScrollIndicatorInsets_(const std::optional<AixScrollIndicatorInsets>& optional) noexcept {
159
+ return *optional;
160
+ }
161
+
162
+ // pragma MARK: std::optional<std::string>
163
+ /**
164
+ * Specialized version of `std::optional<std::string>`.
165
+ */
166
+ using std__optional_std__string_ = std::optional<std::string>;
167
+ inline std::optional<std::string> create_std__optional_std__string_(const std::string& value) noexcept {
168
+ return std::optional<std::string>(value);
169
+ }
170
+ inline bool has_value_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
171
+ return optional.has_value();
172
+ }
173
+ inline std::string get_std__optional_std__string_(const std::optional<std::string>& optional) noexcept {
174
+ return *optional;
175
+ }
176
+
177
+ // pragma MARK: std::shared_ptr<HybridAixSpec>
178
+ /**
179
+ * Specialized version of `std::shared_ptr<HybridAixSpec>`.
180
+ */
181
+ using std__shared_ptr_HybridAixSpec_ = std::shared_ptr<HybridAixSpec>;
182
+ std::shared_ptr<HybridAixSpec> create_std__shared_ptr_HybridAixSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
183
+ void* NON_NULL get_std__shared_ptr_HybridAixSpec_(std__shared_ptr_HybridAixSpec_ cppType);
184
+
185
+ // pragma MARK: std::weak_ptr<HybridAixSpec>
186
+ using std__weak_ptr_HybridAixSpec_ = std::weak_ptr<HybridAixSpec>;
187
+ inline std__weak_ptr_HybridAixSpec_ weakify_std__shared_ptr_HybridAixSpec_(const std::shared_ptr<HybridAixSpec>& strong) noexcept { return strong; }
188
+
189
+ // pragma MARK: Result<void>
190
+ using Result_void_ = Result<void>;
191
+ inline Result_void_ create_Result_void_() noexcept {
192
+ return Result<void>::withValue();
193
+ }
194
+ inline Result_void_ create_Result_void_(const std::exception_ptr& error) noexcept {
195
+ return Result<void>::withError(error);
196
+ }
197
+
198
+ // pragma MARK: std::shared_ptr<HybridAixCellViewSpec>
199
+ /**
200
+ * Specialized version of `std::shared_ptr<HybridAixCellViewSpec>`.
201
+ */
202
+ using std__shared_ptr_HybridAixCellViewSpec_ = std::shared_ptr<HybridAixCellViewSpec>;
203
+ std::shared_ptr<HybridAixCellViewSpec> create_std__shared_ptr_HybridAixCellViewSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
204
+ void* NON_NULL get_std__shared_ptr_HybridAixCellViewSpec_(std__shared_ptr_HybridAixCellViewSpec_ cppType);
205
+
206
+ // pragma MARK: std::weak_ptr<HybridAixCellViewSpec>
207
+ using std__weak_ptr_HybridAixCellViewSpec_ = std::weak_ptr<HybridAixCellViewSpec>;
208
+ inline std__weak_ptr_HybridAixCellViewSpec_ weakify_std__shared_ptr_HybridAixCellViewSpec_(const std::shared_ptr<HybridAixCellViewSpec>& strong) noexcept { return strong; }
209
+
210
+ // pragma MARK: std::shared_ptr<HybridAixComposerSpec>
211
+ /**
212
+ * Specialized version of `std::shared_ptr<HybridAixComposerSpec>`.
213
+ */
214
+ using std__shared_ptr_HybridAixComposerSpec_ = std::shared_ptr<HybridAixComposerSpec>;
215
+ std::shared_ptr<HybridAixComposerSpec> create_std__shared_ptr_HybridAixComposerSpec_(void* NON_NULL swiftUnsafePointer) noexcept;
216
+ void* NON_NULL get_std__shared_ptr_HybridAixComposerSpec_(std__shared_ptr_HybridAixComposerSpec_ cppType);
217
+
218
+ // pragma MARK: std::weak_ptr<HybridAixComposerSpec>
219
+ using std__weak_ptr_HybridAixComposerSpec_ = std::weak_ptr<HybridAixComposerSpec>;
220
+ inline std__weak_ptr_HybridAixComposerSpec_ weakify_std__shared_ptr_HybridAixComposerSpec_(const std::shared_ptr<HybridAixComposerSpec>& strong) noexcept { return strong; }
221
+
222
+ } // namespace margelo::nitro::aix::bridge::swift
@@ -0,0 +1,70 @@
1
+ ///
2
+ /// Aix-Swift-Cxx-Umbrella.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ // Forward declarations of C++ defined types
11
+ // Forward declaration of `AixAdditionalContentInsetsProp` to properly resolve imports.
12
+ namespace margelo::nitro::aix { struct AixAdditionalContentInsetsProp; }
13
+ // Forward declaration of `AixAdditionalContentInsets` to properly resolve imports.
14
+ namespace margelo::nitro::aix { struct AixAdditionalContentInsets; }
15
+ // Forward declaration of `AixScrollIndicatorInsetValue` to properly resolve imports.
16
+ namespace margelo::nitro::aix { struct AixScrollIndicatorInsetValue; }
17
+ // Forward declaration of `AixScrollIndicatorInsets` to properly resolve imports.
18
+ namespace margelo::nitro::aix { struct AixScrollIndicatorInsets; }
19
+ // Forward declaration of `AixScrollOnFooterSizeUpdate` to properly resolve imports.
20
+ namespace margelo::nitro::aix { struct AixScrollOnFooterSizeUpdate; }
21
+ // Forward declaration of `HybridAixCellViewSpec` to properly resolve imports.
22
+ namespace margelo::nitro::aix { class HybridAixCellViewSpec; }
23
+ // Forward declaration of `HybridAixComposerSpec` to properly resolve imports.
24
+ namespace margelo::nitro::aix { class HybridAixComposerSpec; }
25
+ // Forward declaration of `HybridAixSpec` to properly resolve imports.
26
+ namespace margelo::nitro::aix { class HybridAixSpec; }
27
+
28
+ // Include C++ defined types
29
+ #include "AixAdditionalContentInsets.hpp"
30
+ #include "AixAdditionalContentInsetsProp.hpp"
31
+ #include "AixScrollIndicatorInsetValue.hpp"
32
+ #include "AixScrollIndicatorInsets.hpp"
33
+ #include "AixScrollOnFooterSizeUpdate.hpp"
34
+ #include "HybridAixCellViewSpec.hpp"
35
+ #include "HybridAixComposerSpec.hpp"
36
+ #include "HybridAixSpec.hpp"
37
+ #include <NitroModules/Result.hpp>
38
+ #include <exception>
39
+ #include <memory>
40
+ #include <optional>
41
+ #include <string>
42
+
43
+ // C++ helpers for Swift
44
+ #include "Aix-Swift-Cxx-Bridge.hpp"
45
+
46
+ // Common C++ types used in Swift
47
+ #include <NitroModules/ArrayBufferHolder.hpp>
48
+ #include <NitroModules/AnyMapUtils.hpp>
49
+ #include <NitroModules/RuntimeError.hpp>
50
+ #include <NitroModules/DateToChronoDate.hpp>
51
+
52
+ // Forward declarations of Swift defined types
53
+ // Forward declaration of `HybridAixCellViewSpec_cxx` to properly resolve imports.
54
+ namespace Aix { class HybridAixCellViewSpec_cxx; }
55
+ // Forward declaration of `HybridAixComposerSpec_cxx` to properly resolve imports.
56
+ namespace Aix { class HybridAixComposerSpec_cxx; }
57
+ // Forward declaration of `HybridAixSpec_cxx` to properly resolve imports.
58
+ namespace Aix { class HybridAixSpec_cxx; }
59
+
60
+ // Include Swift defined types
61
+ #if __has_include("Aix-Swift.h")
62
+ // This header is generated by Xcode/Swift on every app build.
63
+ // If it cannot be found, make sure the Swift module's name (= podspec name) is actually "Aix".
64
+ #include "Aix-Swift.h"
65
+ // Same as above, but used when building with frameworks (`use_frameworks`)
66
+ #elif __has_include(<Aix/Aix-Swift.h>)
67
+ #include <Aix/Aix-Swift.h>
68
+ #else
69
+ #error Aix's autogenerated Swift header cannot be found! Make sure the Swift module's name (= podspec name) is actually "Aix", and try building the app first.
70
+ #endif
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// AixAutolinking.mm
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #import <Foundation/Foundation.h>
9
+ #import <NitroModules/HybridObjectRegistry.hpp>
10
+ #import "Aix-Swift-Cxx-Umbrella.hpp"
11
+ #import <type_traits>
12
+
13
+ #include "HybridAixSpecSwift.hpp"
14
+ #include "HybridAixCellViewSpecSwift.hpp"
15
+ #include "HybridAixComposerSpecSwift.hpp"
16
+
17
+ @interface AixAutolinking : NSObject
18
+ @end
19
+
20
+ @implementation AixAutolinking
21
+
22
+ + (void) load {
23
+ using namespace margelo::nitro;
24
+ using namespace margelo::nitro::aix;
25
+
26
+ HybridObjectRegistry::registerHybridObjectConstructor(
27
+ "Aix",
28
+ []() -> std::shared_ptr<HybridObject> {
29
+ std::shared_ptr<HybridAixSpec> hybridObject = Aix::AixAutolinking::createAix();
30
+ return hybridObject;
31
+ }
32
+ );
33
+ HybridObjectRegistry::registerHybridObjectConstructor(
34
+ "AixCellView",
35
+ []() -> std::shared_ptr<HybridObject> {
36
+ std::shared_ptr<HybridAixCellViewSpec> hybridObject = Aix::AixAutolinking::createAixCellView();
37
+ return hybridObject;
38
+ }
39
+ );
40
+ HybridObjectRegistry::registerHybridObjectConstructor(
41
+ "AixComposer",
42
+ []() -> std::shared_ptr<HybridObject> {
43
+ std::shared_ptr<HybridAixComposerSpec> hybridObject = Aix::AixAutolinking::createAixComposer();
44
+ return hybridObject;
45
+ }
46
+ );
47
+ }
48
+
49
+ @end
@@ -0,0 +1,55 @@
1
+ ///
2
+ /// AixAutolinking.swift
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ public final class AixAutolinking {
9
+ public typealias bridge = margelo.nitro.aix.bridge.swift
10
+
11
+ /**
12
+ * Creates an instance of a Swift class that implements `HybridAixSpec`,
13
+ * and wraps it in a Swift class that can directly interop with C++ (`HybridAixSpec_cxx`)
14
+ *
15
+ * This is generated by Nitrogen and will initialize the class specified
16
+ * in the `"autolinking"` property of `nitro.json` (in this case, `HybridAix`).
17
+ */
18
+ public static func createAix() -> bridge.std__shared_ptr_HybridAixSpec_ {
19
+ let hybridObject = HybridAix()
20
+ return { () -> bridge.std__shared_ptr_HybridAixSpec_ in
21
+ let __cxxWrapped = hybridObject.getCxxWrapper()
22
+ return __cxxWrapped.getCxxPart()
23
+ }()
24
+ }
25
+
26
+ /**
27
+ * Creates an instance of a Swift class that implements `HybridAixCellViewSpec`,
28
+ * and wraps it in a Swift class that can directly interop with C++ (`HybridAixCellViewSpec_cxx`)
29
+ *
30
+ * This is generated by Nitrogen and will initialize the class specified
31
+ * in the `"autolinking"` property of `nitro.json` (in this case, `HybridAixCellView`).
32
+ */
33
+ public static func createAixCellView() -> bridge.std__shared_ptr_HybridAixCellViewSpec_ {
34
+ let hybridObject = HybridAixCellView()
35
+ return { () -> bridge.std__shared_ptr_HybridAixCellViewSpec_ in
36
+ let __cxxWrapped = hybridObject.getCxxWrapper()
37
+ return __cxxWrapped.getCxxPart()
38
+ }()
39
+ }
40
+
41
+ /**
42
+ * Creates an instance of a Swift class that implements `HybridAixComposerSpec`,
43
+ * and wraps it in a Swift class that can directly interop with C++ (`HybridAixComposerSpec_cxx`)
44
+ *
45
+ * This is generated by Nitrogen and will initialize the class specified
46
+ * in the `"autolinking"` property of `nitro.json` (in this case, `HybridAixComposer`).
47
+ */
48
+ public static func createAixComposer() -> bridge.std__shared_ptr_HybridAixComposerSpec_ {
49
+ let hybridObject = HybridAixComposer()
50
+ return { () -> bridge.std__shared_ptr_HybridAixComposerSpec_ in
51
+ let __cxxWrapped = hybridObject.getCxxWrapper()
52
+ return __cxxWrapped.getCxxPart()
53
+ }()
54
+ }
55
+ }
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridAixCellViewSpecSwift.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridAixCellViewSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::aix {
11
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,80 @@
1
+ ///
2
+ /// HybridAixCellViewSpecSwift.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include "HybridAixCellViewSpec.hpp"
11
+
12
+ // Forward declaration of `HybridAixCellViewSpec_cxx` to properly resolve imports.
13
+ namespace Aix { class HybridAixCellViewSpec_cxx; }
14
+
15
+
16
+
17
+
18
+
19
+ #include "Aix-Swift-Cxx-Umbrella.hpp"
20
+
21
+ namespace margelo::nitro::aix {
22
+
23
+ /**
24
+ * The C++ part of HybridAixCellViewSpec_cxx.swift.
25
+ *
26
+ * HybridAixCellViewSpecSwift (C++) accesses HybridAixCellViewSpec_cxx (Swift), and might
27
+ * contain some additional bridging code for C++ <> Swift interop.
28
+ *
29
+ * Since this obviously introduces an overhead, I hope at some point in
30
+ * the future, HybridAixCellViewSpec_cxx can directly inherit from the C++ class HybridAixCellViewSpec
31
+ * to simplify the whole structure and memory management.
32
+ */
33
+ class HybridAixCellViewSpecSwift: public virtual HybridAixCellViewSpec {
34
+ public:
35
+ // Constructor from a Swift instance
36
+ explicit HybridAixCellViewSpecSwift(const Aix::HybridAixCellViewSpec_cxx& swiftPart):
37
+ HybridObject(HybridAixCellViewSpec::TAG),
38
+ _swiftPart(swiftPart) { }
39
+
40
+ public:
41
+ // Get the Swift part
42
+ inline Aix::HybridAixCellViewSpec_cxx& getSwiftPart() noexcept {
43
+ return _swiftPart;
44
+ }
45
+
46
+ public:
47
+ inline size_t getExternalMemorySize() noexcept override {
48
+ return _swiftPart.getMemorySize();
49
+ }
50
+ void dispose() noexcept override {
51
+ _swiftPart.dispose();
52
+ }
53
+ std::string toString() override {
54
+ return _swiftPart.toString();
55
+ }
56
+
57
+ public:
58
+ // Properties
59
+ inline bool getIsLast() noexcept override {
60
+ return _swiftPart.isLast();
61
+ }
62
+ inline void setIsLast(bool isLast) noexcept override {
63
+ _swiftPart.setIsLast(std::forward<decltype(isLast)>(isLast));
64
+ }
65
+ inline double getIndex() noexcept override {
66
+ return _swiftPart.getIndex();
67
+ }
68
+ inline void setIndex(double index) noexcept override {
69
+ _swiftPart.setIndex(std::forward<decltype(index)>(index));
70
+ }
71
+
72
+ public:
73
+ // Methods
74
+
75
+
76
+ private:
77
+ Aix::HybridAixCellViewSpec_cxx _swiftPart;
78
+ };
79
+
80
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridAixComposerSpecSwift.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridAixComposerSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::aix {
11
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,69 @@
1
+ ///
2
+ /// HybridAixComposerSpecSwift.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include "HybridAixComposerSpec.hpp"
11
+
12
+ // Forward declaration of `HybridAixComposerSpec_cxx` to properly resolve imports.
13
+ namespace Aix { class HybridAixComposerSpec_cxx; }
14
+
15
+
16
+
17
+
18
+
19
+ #include "Aix-Swift-Cxx-Umbrella.hpp"
20
+
21
+ namespace margelo::nitro::aix {
22
+
23
+ /**
24
+ * The C++ part of HybridAixComposerSpec_cxx.swift.
25
+ *
26
+ * HybridAixComposerSpecSwift (C++) accesses HybridAixComposerSpec_cxx (Swift), and might
27
+ * contain some additional bridging code for C++ <> Swift interop.
28
+ *
29
+ * Since this obviously introduces an overhead, I hope at some point in
30
+ * the future, HybridAixComposerSpec_cxx can directly inherit from the C++ class HybridAixComposerSpec
31
+ * to simplify the whole structure and memory management.
32
+ */
33
+ class HybridAixComposerSpecSwift: public virtual HybridAixComposerSpec {
34
+ public:
35
+ // Constructor from a Swift instance
36
+ explicit HybridAixComposerSpecSwift(const Aix::HybridAixComposerSpec_cxx& swiftPart):
37
+ HybridObject(HybridAixComposerSpec::TAG),
38
+ _swiftPart(swiftPart) { }
39
+
40
+ public:
41
+ // Get the Swift part
42
+ inline Aix::HybridAixComposerSpec_cxx& getSwiftPart() noexcept {
43
+ return _swiftPart;
44
+ }
45
+
46
+ public:
47
+ inline size_t getExternalMemorySize() noexcept override {
48
+ return _swiftPart.getMemorySize();
49
+ }
50
+ void dispose() noexcept override {
51
+ _swiftPart.dispose();
52
+ }
53
+ std::string toString() override {
54
+ return _swiftPart.toString();
55
+ }
56
+
57
+ public:
58
+ // Properties
59
+
60
+
61
+ public:
62
+ // Methods
63
+
64
+
65
+ private:
66
+ Aix::HybridAixComposerSpec_cxx _swiftPart;
67
+ };
68
+
69
+ } // namespace margelo::nitro::aix
@@ -0,0 +1,11 @@
1
+ ///
2
+ /// HybridAixSpecSwift.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2026 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "HybridAixSpecSwift.hpp"
9
+
10
+ namespace margelo::nitro::aix {
11
+ } // namespace margelo::nitro::aix