Pular para o conteúdo

06 · Funções

Cláusulas de função por padrão

Declarações consecutivas da mesma função escolhem o corpo pelos padrões dos parâmetros e guards opcionais, na ordem escrita. As cláusulas formam uma função e precisam cobrir os casos; guards sozinhos não garantem cobertura. Contratos e rótulos públicos precisam coincidir.

Nesta página

Declarações consecutivas da mesma função escolhem o corpo pelos padrões dos parâmetros e guards opcionais, na ordem escrita. As cláusulas formam uma função e precisam cobrir os casos; guards sozinhos não garantem cobertura. Contratos e rótulos públicos precisam coincidir.

Exemplo completo

Cláusulas de função por padrão.

24-pattern-function-clauses.zolo
Playground
// Consecutive clauses form one function and try patterns in written order.

fn classify(0: int) -> str = "zero"
fn classify(n: int) if n > 0 -> str = "positive"
fn classify(n: int) -> str = "negative"

// Public argument labels are shared; binders remain local to each clause.

fn magnitude(value n: int) if n < 0 -> int = -n
fn magnitude(value n: int) -> int = n

print(classify(0))
print(classify(3))
print(classify(-3))
print(magnitude(value: -4))
// expected: zero

// expected: positive

// expected: negative

// expected: 4

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/24-pattern-function-clauses.zolo

Índice global

Encontre seu caminho pela Zolo

Experimente uma ideia

Comece por aqui

9 resultados

9 resultados

enespt-br