Моя функция
ConvertJsonToObject конвертирует json текст в объект типа T и возвращает этот объект:
inline fun <reified T> ConvertJsonToObject(moshi:Moshi, jsonText:String): T?
{
val moshiAdapter: JsonAdapter<T> = moshi.adapter(T::class.java)
return moshiAdapter.fromJson(jsonText)
}
Описание:
Моя функция
ConvertJsonToObject возвращает неизвестный тип
T?.
В начале функции я указал
inline <reified T> это значит что функция является
template или
generic т.е. будет использовать неизвестный тип
T.
А можно так:
inline fun <reified T> <T> ConvertJsonToObject(moshi:Moshi, jsonText:String): T?
В начале функции я мог указать
<T> это значит что функция тоже является
template или
generic т.е. будет использовать неизвестный тип
T.
Зачем я использую: inline <reified T>
Ответ: Только так я могу использовать
T::class.java