This would be just the generated Protobuf sources but with a Kotlin API? Is 
there a problem with generating those inside your own project? (At least in C++ 
we also try to hide the Protobuf messages, I suppose we can't quite do that in 
Java easily.)

On Mon, Mar 7, 2022, at 09:13, Gavin Ray wrote:
> I'm curious whether folks think it would be reasonable to upstream an
> optional Kotlin submodule that uses the Kotlin code generator for FlightSQL?
>
> Or would this be better off as a personal repository?
>
> The Rust FlightSQL API is a fair bit nicer due to the syntax.
> The Kotlin Protobuf plugin produces an API very similar:
> *https://github.com/wangfenjin/arrow-datafusion/pull/1/files#diff-d942c264020a5d47b87deaca1b1064b53f3819a8f90764fad8fa3c2b9ccf6225R82-R92
> <https://github.com/wangfenjin/arrow-datafusion/pull/1/files#diff-d942c264020a5d47b87deaca1b1064b53f3819a8f90764fad8fa3c2b9ccf6225R82-R92>*
>
> This module would allow writing the below:
>
> DiceSeries series = DiceSeries.newBuilder()
>     .addRoll(DiceRoll.newBuilder()
>         .setValue(5))
>     .addRoll(DiceRoll.newBuilder()
>         .setValue(20)
>         .setNickname("critical hit"))
>     .build()
>
> As:
>
> val series = diceSeries {
>   rolls = listOf(
>     diceRoll { value = 5 },
>     diceRoll {
>       value = 20
>       nickname = "critical hit"
>     }
>   )
> }

Reply via email to