@@ -26,16 +26,16 @@ enum BSet[+T] {
26
26
27
27
def isTop : Boolean = this == Inf
28
28
def isBottom : Boolean = this == Fin (Set ())
29
- inline def ⊑ (that : BSet [T @ uncheckedVariance]): Boolean = this ⊑ that
29
+ inline def ⊑ (that : BSet [T @ uncheckedVariance]): Boolean = this <= that
30
30
def <= [U >: T ](that : BSet [U ]): Boolean = (this , that) match
31
31
case (_, Inf ) => true
32
32
case (Inf , _) => false
33
33
case (Fin (lset), Fin (rset)) => lset.toSet subsetOf rset.toSet
34
- inline def ⊔ (that : BSet [T @ uncheckedVariance]): BSet [T ] = this ⊔ that
34
+ inline def ⊔ (that : BSet [T @ uncheckedVariance]): BSet [T ] = this || that
35
35
def || [U >: T ](that : BSet [U ]): BSet [U ] = (this , that) match
36
36
case (Inf , _) | (_, Inf ) => Inf
37
37
case (Fin (lset), Fin (rset)) => Fin (lset ++ rset)
38
- inline def ⊓ (that : BSet [T @ uncheckedVariance]): BSet [T ] = this ⊓ that
38
+ inline def ⊓ (that : BSet [T @ uncheckedVariance]): BSet [T ] = this && that
39
39
def && [U >: T ](that : BSet [U ]): BSet [U ] = (this , that) match
40
40
case (Inf , _) => that
41
41
case (_, Inf ) => this
@@ -52,6 +52,6 @@ enum BSet[+T] {
52
52
object BSet {
53
53
val Top = Inf
54
54
val Bot = BSet ()
55
- inline def apply [A ](elems : A * ): BSet [A ] = apply(elems)
56
- inline def apply [A ](elems : Iterable [A ]): BSet [A ] = Fin (elems.toSet)
55
+ inline def apply [T ](elems : T * ): BSet [T ] = apply(elems)
56
+ inline def apply [T ](elems : Iterable [T ]): BSet [T ] = Fin (elems.toSet)
57
57
}
0 commit comments