5
我正在嘗試爲具有多個類型參數的類型實現一個cat Monad
實例。我看着貓的實例,看看它是如何完成的。從貓Either
Monad
實例代碼的一部分複製如下:什麼是?類型?
import cats.Monad
object EitherMonad {
implicit def instance[A]: Monad[Either[A, ?]] =
new Monad[Either[A, ?]] {
def pure[B](b: B): Either[A, B] = Right(b)
def flatMap[B, C](fa: Either[A, B])(f: B => Either[A, C]): Either[A, C] =
fa.right.flatMap(f)
}
}
它失敗,錯誤編譯:error: not found: type ?
什麼是?
型,我怎麼能創造我自己的情況下,當使用類型?
'?'是一個有效的符號,在這種情況下它就像'A'。 –