Question

J'ai rencontré une syntaxe étrange dans Guide linguistique Boo :

setter = { value | a = value }

Que fait le | l'opérateur signifie?

Était-ce utile?

La solution

La documentation de Boo semble faire défaut dans ce domaine -- il semble que

setter = { value | a = value }

est un raccourci pour

setter = def(value):
    a = value

Autres conseils

Eh bien, n'ayant jamais utilisé Boo, mon hypothèse (instruite) est que c'est pour passer des paramètres aux fonctions de fermeture de style lambda.Dans ce cas, {P | C} fait référence à une fonction anonyme prenant un seul paramètre lié à P dans le code C.

Adam a raison.Le but de l'exemple est de montrer que les lambdas dans boo ont un accès en lecture et en écriture à la portée englobante.

Cette syntaxe pour spécifier les blocs de code (fonctions anonymes) a été empruntée à Rubis et Petite conversation

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top