Das folgende funktioniert einwandfrei mit scala Beta1 und scalaz snapshot 5.0:
val p1: Int => Boolean = (i : Int) => i > 4
val s: List[Int] = List(1, 2, 3)
val b1 = s p1
Aber das funktioniert nicht:
val s: Set[Int] = Set(1, 2, 3)
val b1 = s p1
Ich bekomme den folgenden Fehler:
Gefunden: Int => Boolean
Erforderlich: Boolean => Boolean
Die Signatur der -Methode ist:
def (p: A => Boolean)(implicit r: FoldRight[M]): Boolean = any(p)
Und es sollte ein impliziter SetFoldRight
im Scope sein. Es ist genau dasselbe für die Methoden: , und :
- was ist hier los?