Skip to content

jextract/jni: Basic accept/return support for Swift tuples#602

Draft
ktoso wants to merge 3 commits intoswiftlang:mainfrom
ktoso:tuples
Draft

jextract/jni: Basic accept/return support for Swift tuples#602
ktoso wants to merge 3 commits intoswiftlang:mainfrom
ktoso:tuples

Conversation

@ktoso
Copy link
Collaborator

@ktoso ktoso commented Mar 10, 2026

Support for returning and accepting tuples in jextract/jni.

We implement this by passing single element arrays as indirect results into which the thunks initialize the values.

I somehow super messed up my local gradle config so didn't verify the sample :| I'm working on figuring what happened...

resolves #596

Disclosure: boilerplate and general structure was generated using claude code. I have fully reviewed and polished up the output to a standard I deem acceptable for the project. The way we handle the out parameters is good as well, the array trick is good for these one off parameters of potentially different types. We could optimize this if we notice the tuple is of the same type and just use a single array then etc.

@ktoso ktoso changed the title WIP: jextract/jni tuple support jextract/jni: Basic accept/return support for Swift tuples Mar 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

jextract/jni: tuple support

1 participant