Saltar al contenido

06 · Funciones

Cláusulas de función por patrón

Las declaraciones consecutivas de la misma función eligen el cuerpo por patrones de parámetros y guards opcionales, en el orden escrito. Forman una función y deben cubrir los casos; los guards solos no garantizan cobertura. Los contratos y etiquetas públicas deben coincidir.

En esta página

Las declaraciones consecutivas de la misma función eligen el cuerpo por patrones de parámetros y guards opcionales, en el orden escrito. Forman una función y deben cubrir los casos; los guards solos no garantizan cobertura. Los contratos y etiquetas públicas deben coincidir.

Ejemplo completo

Cláusulas de función por patrón.

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

Reglas y comportamiento

Parámetros de funciones y lambdas · Documentación

Desde un checkout del repositorio:

zolo examples/features/05-functions/24-pattern-function-clauses.zolo

Consulta también

Índice global

Encuentra tu camino por Zolo

Prueba una idea

Empieza aquí

9 resultados

9 resultados

enespt-br