Pergunta

Encontrei uma sintaxe estranha em Guia de idiomas Boo :

setter = { value | a = value }

O que faz o | operador significa?

Foi útil?

Solução

A documentação do Boo parece estar faltando nesta área - parece que

setter = { value | a = value }

é uma abreviatura para

setter = def(value):
    a = value

Outras dicas

Bem, como nunca usei o Boo, meu palpite (educado) é que ele serve para passar parâmetros para as funções de fechamento no estilo lambda.Nesse caso, {p | C} refere -se a uma função anônima que leva um único parâmetro ligado a P dentro do código C.

Adão está correto.O objetivo do exemplo é mostrar que lambdas em boo têm acesso de leitura e gravação ao escopo envolvente.

Essa sintaxe para especificar blocos de código (funções anônimas) foi emprestada de Rubi e Conversa fiada

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top