DEV Community

loading...

Discussion on: Implementing a Ternary Operator in Scala

awwsmm profile image
Andrew (he/him) Author • Edited

Fair enough! So what you're saying is you'd have the ifTrue and ifFalse themselves return Eithers, if necessary, like

(3 < 2) ? Left(42) |: Right("forty-two")

Is that right?

I wonder if there's an implicit conversion that would let us do away with the Left() and Right()...

Thread Thread
dividedbynil profile image
Kane Ong • Edited

That is a good example to ensure type consistency with minimal effort, you don't need |: and &: at the same time and achieve the same result (Option[Either[T, F]]).

One of my main point here is do not over obsess with data type generalization and construct unnecessary structures.