Support Kotlin/Native in serde_generate and serde_generate_bin#86
Open
avvlas wants to merge 7 commits intozefchain:mainfrom
Open
Support Kotlin/Native in serde_generate and serde_generate_bin#86avvlas wants to merge 7 commits intozefchain:mainfrom
avvlas wants to merge 7 commits intozefchain:mainfrom
Conversation
Added runtime for Kotlin/Native. 1. Uses Kotlin unsigned integer types (UInt, ULong, etc.) 2. Int128 is stored as a data class with high (Long) and low (ULong) parts (Kotlin/Native doesn't have a BigInteger type like Java) 3. The rest is similar to Java runtime
626d380 to
a8ef3a4
Compare
Added Kotlin/Native support for serde-generate and serde-generate-bin
a8ef3a4 to
d719170
Compare
Contributor
|
Thanks for the PR! I'll try to make some comments in the coming week or so |
Contributor
|
Can you propose a change to .github/workspace so that this can be tested in CI? |
becaced to
0e5bcd0
Compare
Author
@ma2bd |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Currently, only Kotiln/Jvm is supported (through Java). This makes it impossible to use
serde-generatefor Kotlin/Native, Kotlin Multiplatform projects (basically, for any other targets than Jvm and Android).This PR adds native Kotlin runtime and Kotlin generation:
parts (Kotlin/Native doesn't have a BigInteger type like Java)
Option<T>type is mapped toT?(Kotlin nullable type)Tuple2andTuple3, Kotlin'sPairandTripleare used.Test Plan
The code is tested in kotlin_generate.rs and kotlin_runtime.rs using kotlinc-native compiler