I'm working on a library that is intended to be us...
# multiplatform
m
I'm working on a library that is intended to be used by Android teams using Kotlin, iOS teams using Swift, and KMM teams using Kotlin. In some places I have functions that only need to take an
Iterable
. But that becomes a function that takes
id
in Objective-C. I could create two functions, one that takes a
Set
and one that takes a
List
but then the teams using Kotlin will be force to cast or convert their `Iterables`` to a specific type. I could leave in the
Iterable
overload but then that is visible to the Swift teams and presents a confusing API. Seems like any choice I make creates an API that is somewhat painful for one of the teams. Has anyone else handled this?