06 · Funções
Argumentos nomeados obrigatórios
Parâmetros depois de * precisam ser passados com seus rótulos externos. Defaults ainda podem ser omitidos. O contrato acompanha métodos, declarações exportadas e valores de função tipados; passar a função como callback não remove a exigência.
Nesta página
Parâmetros depois de * precisam ser passados com seus rótulos externos. Defaults ainda podem ser omitidos. O contrato acompanha métodos, declarações exportadas e valores de função tipados; passar a função como callback não remove a exigência.
Exemplo completo
Argumentos nomeados obrigatórios.
named_required.zolo
// Required names make call sites readable, including through a function value.
fn transfer(*,from:int,to:int,amount:int=1)->int=from-to+amount
let send=transfer
print(send(from:10,to:3,amount:2))
// Earlier parameters may remain positional; defaults still belong to the callee.
fn advance(start:int,*,by:int=1)->int=start+by
print(advance(7,by:2))
Regras e comportamento
Parâmetros de funções e lambdas · Documentação
A partir de um checkout do repositório:
zolo examples/features/named_required.zolo
Veja também