mg6maciej
03/17/2017, 8:37 AMinline fun <reified T : Any> myFunc() = myFuncImpl(T::class)
internal fun <T : Any> myFuncImpl(clazz: KClass<T>) {}
#language-proposals How about making this compile?okkero
03/17/2017, 8:40 AMmg6maciej
03/17/2017, 8:41 AMokkero
03/17/2017, 8:42 AMmg6maciej
03/17/2017, 8:42 AMinternal
is actually public
on bytecode level, so it's "possible" to call it anyway from outside the library.myFuncImpl
to the developer using myFunc
.okkero
03/17/2017, 8:44 AMmg6maciej
03/17/2017, 8:45 AMokkero
03/17/2017, 8:46 AMmg6maciej
03/17/2017, 8:47 AMclazz: KClass
protected as well as public API.marcinmoskala
03/17/2017, 9:20 AMokkero
03/17/2017, 9:45 AMmarcinmoskala
03/17/2017, 9:47 AMokkero
03/17/2017, 9:50 AMmarcinmoskala
03/17/2017, 10:07 AMilya.gorbunov
03/17/2017, 2:38 PM@PublishedApi
annotation. This will make it effectively public.okkero
03/17/2017, 2:39 PMpavlospt
03/17/2017, 2:40 PMokkero
03/17/2017, 2:40 PMpavlospt
03/17/2017, 2:41 PMmg6maciej
03/17/2017, 2:41 PMokkero
03/17/2017, 2:41 PMpavlospt
03/17/2017, 2:42 PMokkero
03/17/2017, 2:42 PMpavlospt
03/17/2017, 2:43 PMgetFoo
that is overridenoverride inline fun<reified T> getFoot() : T {}
okkero
03/17/2017, 2:45 PMilya.gorbunov
03/17/2017, 2:45 PMmg6maciej
03/17/2017, 2:46 PMinternal
function be visible to users of the library? a) In Java or b) in Kotlin?okkero
03/17/2017, 2:46 PMmg6maciej
03/17/2017, 2:47 PMokkero
03/17/2017, 2:47 PMmg6maciej
03/17/2017, 2:49 PMilya.gorbunov
03/17/2017, 2:56 PM