We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent ece0c33 commit 03b2d42Copy full SHA for 03b2d42
tests/pos/10510.scala
@@ -0,0 +1,17 @@
1
+sealed trait Bool
2
+case object True extends Bool
3
+case object False extends Bool
4
+
5
+sealed trait SBool[B <: Bool]
6
+case object STrue extends SBool[True.type]
7
+case object SFalse extends SBool[False.type]
8
9
+type Not[B <: Bool] <: Bool = B match {
10
+ case True.type => False.type
11
+ case False.type => True.type
12
+}
13
14
+def not[B <: Bool](b: SBool[B]): SBool[Not[B]] = b match {
15
+ case STrue => SFalse
16
+ case SFalse => STrue
17
0 commit comments