Ich (versehentlich) stieß auf ein bisschen Pattern-Matching-Syntax, die ich nicht zu kompilieren erwartet hatte und jetzt nicht herausfinden kann.
Es scheint mit unapplySeq
verbunden zu sein.
Beachten Sie den case x List(_,_)
-Teil in diesem einfachen Beispiel:
Ich bin an :
oder @
in der Mustervergleichssyntax gewöhnt, bin aber darüber verwirrt. Wie funktioniert diese Syntax und was (wenn überhaupt) ist ihre Beziehung zu unapplySeq
?
Beispielcode, der in Scala 2.11.6
ausgeführt wirdDie entsprechende Nicht-Infix-Version ist:
%Vor%Ein Infix-Operationsmuster p; op; q ist eine Abkürzung für den Konstruktor oder Extraktormuster op (p, q). Der Vorrang und die Assoziativität von Operatoren in Mustern sind die gleichen wie in Ausdrücken.
Ein Infix-Operationsmuster p; op; (q1, ..., qn) ist eine Abkürzung für Konstruktor- oder Extraktormuster op (p, q1, ..., qn).
Tags und Links scala pattern-matching scala-2.11