Вывод типа подсчитанных функций высшего порядка - PullRequest
1 голос
/ 19 февраля 2020

Я разрабатываю модульный тест на Android, используя mockito- kotlin.

Я пытался шпионить за функцией, поэтому я сделал следующий код, чтобы сделать это, и она отлично работает .

В этом случае AndroidStudio указал, что приведение не было необходимости, но когда удаление приведено, тип меняется на Foo вместо Foo -> Единица измерения:

private val onClick /*:(Foo) -> Unit*/ = spy({ foo: Foo -> } as (Foo) -> Unit)

private val onClick /*:(Foo) -> Unit*/ = { foo: Foo -> }

private val onClick /*:Foo*/ = spy({ foo: Foo -> })

Как компилятор пришел к выводу, что типом является Foo, а также как мне написать код, чтобы избежать ненужного предупреждения приведения?

...