Was ist der forSome Schlüsselwort in Scala für?
Fand ich den folgenden code-snippet:
List[T] forSome { type T }
Den forSome
sieht aus wie eine Methode, aber mein Freund sagte mir, es ist ein Schlüsselwort.
Ich es gegoogelt, fand aber nur wenige Dokumente über forSome
. Was bedeutet das, und wo bekomme ich Unterlagen über ihn?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
forSome
- Schlüsselwort wird verwendet, um zu definieren, existenzielle Typen in Scala. Es gibt diese Scala Glossar Seite, die erklärt, was Sie sind. Ich konnte nicht finden einen Platz in der Scala-docs, die erklären Ihnen im detail, so hier ist ein blog-Artikel fand ich auf Google zu erklären, wie Sie nützlich sind.Update: Sie finden eine genaue definition der existentiellen Typen in der Scala-Spezifikation aber es ist ziemlich dicht.
Zusammenfassend einige der Beiträge habe ich verlinkt, existentielle Typen sind nützlich, wenn Sie arbeiten wollen, auf etwas, aber kümmern sich nicht um die Einzelheiten der Art in es. Zum Beispiel, das Sie bedienen möchten, auf arrays, aber egal welche Art array:
was Sie auch tun könnte, ist eine Typ-variable in der Methode:
aber Sie können nicht wollen, fügen Sie die Typ-Variablen in einigen Fällen. Sie können auch hinzufügen einer Bindung an die Typ-Variablen:
Siehe auch in diesem blog-post das ist, wo ich habe dieses Beispiel aus.
Ich weiß nicht, Scala, aber deine Frage hob mein Interesse und begann zu Googeln.
Fand ich, dass in Scala changelog: