Я столкнулся со странным синтаксисом в Руководстве по языку Boo:
setter = { value | a = value }
Что означает | оператор в смысле?
Я столкнулся со странным синтаксисом в Руководстве по языку Boo:
setter = { value | a = value }
Что означает | оператор в смысле?
Документация Boo, кажется, отсутствует в этой области - кажется, что
setter = { value | a = value }
является сокращением для
setter = def(value):
a = value
Ну, никогда не используя Boo, я (образованный) думаю, что это для передачи параметра функциям в стиле лямбда закрытия. В этом случае { р | C } относится к анонимной функции, принимающей единственный параметр, привязанный к p в коде C.
Адам прав. Цель примера — показать, что лямбда-выражения в boo имеют доступ для чтения и записи к охватывающей области.