ich die Katzen Scala Bibliothek verwenden und die IntelliJ IDE scheint mit dem Einsatz von implicits kämpfen werden:Falsch Fehler bei der Verwendung von Katzen Bibliothek in IntelliJ
Hier ist ein einfaches Beispiel:
import cats.std.all._
import cats.Traverse.ops._
def useSequence[A](ls : List[Option[A]]) : Option[List[A]] = {
ls.sequence
}
In IntelliJ, dieser Code ist rot hervorgehoben. Aber ich kann mit Make Project
oder der Befehlszeile gut bauen.
Momentan befindet sich der Fehler ist:
Expression von Typ Nothing [Liste [Nichts]] entspricht nicht erwarteten Typ Option [Liste [A]]
Andere Zeiten der Fehler ist so etwas wie:
Wertsequenz kein Mitglied der Liste ist [Option [A]]
Ist das ein Fehler in IntelliJ oder fehlt mir eine Konfiguration?
Ich verwende IntelliJ 15.0.2 mit Version 2.0.4 des Scala-Plugins.
es ist im Grunde ein intellij Fehler, kann es nur folgern, so viel, und das sieht aus wie es einige Makros verwendet, die es macht sogar schwerer für intellij, um Typen zu folgern (Katzen benutzt Makros nicht Sie). Wenn Sie möchten, dass intellij glücklich ist, müssen Sie ihm noch ein paar Typen geben: ls.sequence [Option, A] '. – Noah