1
0
Fork 0
gobject-generator/Sources
Brendan Szymanski 164f8b7b9a Generate boxed-record memory management and interface requirements
Boxed records (C4): resolve each record's copy/free function from the GIR
copy-function/free-function attribute, else its own ref/copy and unref/free
method, and render init(retaining:) plus an isolated deinit. The deinit is
isolated because the package's default MainActor isolation makes accessing the
non-Sendable pointer from a nonisolated deinit a hard error. The registry uses
the same resolution so transfer=none returns copy instead of adopting a
borrowed pointer. This supersedes the earlier deferral: the hypothesised
OpaquePointer/Sendable barriers either did not hold or were solvable.

Interfaces (C5): plan each interface method through planMethod and render it as
a protocol requirement (no body); the conforming class supplies the C call.
2026-07-17 21:04:37 -04:00
..
swift-gtk-gen Generate class methods and constructors with runtime smoke tests 2026-07-17 15:43:30 -04:00
SwiftGtkGenBuildPlugin Fix plugin listing, exit-status check, DocC comments, lowercase config.toml 2026-07-01 14:06:16 -04:00
SwiftGtkGenCommandPlugin Fix plugin listing, exit-status check, DocC comments, lowercase config.toml 2026-07-01 14:06:16 -04:00
SwiftGtkGenCore Generate boxed-record memory management and interface requirements 2026-07-17 21:04:37 -04:00