2016-07-03 5 views

答えて

2

機能をお探しの場合toEither[A, B](union: A | B): Either[A, B]あなたは運が悪いです。これを見るための最も簡単な方法は、それがABのいずれかの選択肢のために働かなければならないことに注意することがあるので、私はUnit

toEither[A, B](union: A | B ): Either[A, B] 
toEither  (union: Unit | Unit): Either[Unit, Unit] 
toEither  (union: Unit  ): Either[Unit, Unit] 

にそれらの両方を専門としている場合、それはそのような機能は、任意の選択をする必要があるだろうことが明らかになり、そのような機能は実際には存在しません。この練習を他のタイプのCA = B = Cで試してみてください。

通常、共用体型は、いくつかの異なる型の値をとり、実行時にそれらを区別するJavaScript関数があると認識するときに便利ですが、Eitherよりも有用ではありません。

一般に、関数toUnion[A, B](eit: Either[A, B]): A | Bは、未分化ユニオンに値が「左」か「右」かを「忘れている」ということを1つ実行しています。この情報が破壊されると、前進する選択肢が少なくなります。

関連する問題