3
Class<T>
を与えると、Class<T> where T : Enum<T>
が必要なメソッド/コンストラクタをどのように呼び出すか呼び出しますか?Kotlinのメソッドを別の上限で呼び出すにはどうすればよいですか?
fun <T : Any> handleAny(classOfT: Class<T>) {
if (classOfT.isEnum) {
handleEnum(classOfT)
}
}
fun <T : Enum<T>> handleEnum(classOfT: Class<T>) { /*...*/ }
エラー:inferred type T is not a subtype of kotlin.Enum<T>
Javaでは、私は未チェックの呼び出しを行うことができますが、私はKotlinで似た何かをする方法を見つけるように見えることはできません。
FYI:下記のホットキーの素晴らしい回避策に加えて、https://youtrack.jetbrains.com/issue/KT-12393を作成しました。 – mfulton26