elect
09/23/2017, 6:26 PMinterface reinterpreter<T> {
operator fun get(index: Int): T
operator fun set(index: Int, value: T): Any
}
object vec1bData : reinterpreter<Vec1b> {
override operator fun get(index: Int) = Vec1b(data, index * Vec1b.size)
override fun set(index: Int, value: Vec1b) = <http://value.to|value.to>(data, index * Vec1b.size)
}
but when I type
inline fun <reified T> data():reinterpreter<T> = when (T::class.java) {
Vec1b::class.java -> vec1bData
}
I get:
required, but foundreinterpeter<T>
vec1bData
ilya.gorbunov
09/23/2017, 9:26 PMT::class.java == Class<X>
then T == X
, https://youtrack.jetbrains.com/issue/KT-13646ilya.gorbunov
09/23/2017, 9:28 PMvec1bData as reinterpeter<T>
elect
09/24/2017, 7:36 AM