aboutsummaryrefslogblamecommitdiff
path: root/tests/pos/t2712-7.scala
blob: d9c5243f132db135090483849312ea9615d1b5b1 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15














                                                                   
package test

// Cats Xor, Scalaz \/, scala.util.Either
sealed abstract class Xor[+A, +B] extends Product with Serializable
object Xor {
  final case class Left[+A](a: A) extends (A Xor Nothing)
  final case class Right[+B](b: B) extends (Nothing Xor B)
}

object TestXor {
  import Xor._
  def meh[F[_], A, B](fa: F[A])(f: A => B): F[B] = ???
  meh(new Right(23): Xor[Boolean, Int])(_ < 13)
  meh(new Left(true): Xor[Boolean, Int])(_ < 13)
}