Frage
Ich bin auf eine seltsame Syntax gestoßen Boo-Sprachführer :
setter = { value | a = value }
Was macht die | Bediener meinen?
Lösung
Die Dokumentation von Boo scheint in diesem Bereich zu fehlen – so scheint es
setter = { value | a = value }
ist eine Abkürzung für
setter = def(value):
a = value
Andere Tipps
Nun, da ich Boo noch nie verwendet habe, gehe ich (gegründet) davon aus, dass es zur Übergabe von Parametern an die Schließungsfunktionen im Lambda-Stil dient.In diesem Fall {p | C} bezieht sich auf eine anonyme Funktion, die einen einzelnen Parameter mit P in den Code C übernimmt.
Adam hat recht.Der Sinn des Beispiels besteht darin, zu zeigen, dass Lambdas in boo Lese- und Schreibzugriff auf den umschließenden Bereich haben.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow