Котлин общий для Void и value - PullRequest
0 голосов
/ 19 октября 2018

В Kotlin, есть ли способ передать универсальный тип, который также будет работать с Void типом?

Я хочу передать Task<*>, который может иметь либо Void, либо действительный Credential тип объекта.

Как я могу изменить конструктор class TaskWrapperImpl(private val task: Task<Any>) {}

Вот как я использую этот класс:

val taskWrapper = TaskWrapperImpl(googleSignInClient.signOut())

googleSignInClient.signOut() возвращает Task<Void!>!

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

Я нашел способ сделать это, я искал следующий код:

class TaskWrapperImpl <T> constructor(task: Task<T>)

0 голосов
/ 19 октября 2018

Вы можете использовать Unit таким образом:

class TaskWrapperImpl(private val task: Task<Unit>) {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...