Pular para o conteúdo

06 · Funções

Lambdas curtas de predicado

Acessos iniciados por underscore usam o mesmo parâmetro implícito. Combine campos, contas e testes booleanos no callback; use uma lambda explícita quando o escopo ficar ambíguo.

Nesta página

Acessos iniciados por underscore usam o mesmo parâmetro implícito. Combine campos, contas e testes booleanos no callback; use uma lambda explícita quando o escopo ficar ambíguo.

Exemplo completo

Lambdas curtas de predicado.

19-short-lambda-predicates.zolo
Playground
// Short lambdas share one parameter across the argument's rooted accesses.

struct User { name: str, age: int, active: bool }
struct Line { price: int, quantity: int }

fn main() {
    let users = [
        User { name: "Ada", age: 36, active: true },
        User { name: "Bo", age: 17, active: true },
        User { name: "Cy", age: 24, active: false },
    ]
    print(users.filter(_.active && _.age >= 18).map(_.name))
    // expected: [Ada]


    let lines = [Line { price: 3, quantity: 4 }, Line { price: 5, quantity: 2 }]
    print(lines.map(_.price * _.quantity))
    // expected: [12, 10]


    let adjustment = 2
    print(lines.map(_.price + adjustment))
    // expected: [5, 7]

}

Regras e comportamento

Parâmetros de funções e lambdas · Documentação

A partir de um checkout do repositório:

zolo examples/features/05-functions/19-short-lambda-predicates.zolo

Índice global

Encontre seu caminho pela Zolo

Experimente uma ideia

Comece por aqui

9 resultados

9 resultados

enespt-br