From 5faad77ccebb41e9674b103d499de927c0dba662 Mon Sep 17 00:00:00 2001 From: Miles Sabin Date: Fri, 6 May 2016 12:39:13 +0100 Subject: Added pos test with multiple cases; added neg tests. --- test/files/pos/hkgadt.scala | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'test/files/pos') diff --git a/test/files/pos/hkgadt.scala b/test/files/pos/hkgadt.scala index 0f3739f4d4..5719c752cd 100644 --- a/test/files/pos/hkgadt.scala +++ b/test/files/pos/hkgadt.scala @@ -1,18 +1,35 @@ -package test - object HKGADT { sealed trait Foo[F[_]] final case class Bar() extends Foo[List] def frob[F[_]](foo: Foo[F]): F[Int] = foo match { - case Bar() => - List(1) + case Bar() => List(1) + } + + sealed trait Foo1[F] + final case class Bar1() extends Foo1[Int] + def frob1[A](foo: Foo1[A]): A = foo match { + case Bar1() => 1 + } +} + +object HKGADT2 { + sealed trait Foo[F[_]] + final case class Bar() extends Foo[List] + final case class Baz() extends Foo[Set] + + def frob[F[_]](foo: Foo[F]): F[Int] = + foo match { + case Bar() => List(1) + case Baz() => Set(1) } sealed trait Foo1[F] final case class Bar1() extends Foo1[Int] + final case class Baz1() extends Foo1[Boolean] def frob1[A](foo: Foo1[A]): A = foo match { case Bar1() => 1 + case Baz1() => true } } -- cgit v1.2.3