Saltar al contenido

07 · Coincidencia de Patrones

Enlaces de patrones con is

Usa is con un patrón de valor para probar y enlazar en una condición. Las capturas son visibles solo en el camino exitoso, incluidas condiciones siguientes. Las pruebas existentes is Tipo e is not Tipo mantienen su significado.

En esta página

Usa is con un patrón de valor para probar y enlazar en una condición. Las capturas son visibles solo en el camino exitoso, incluidas condiciones siguientes. Las pruebas existentes is Tipo e is not Tipo mantienen su significado.

Ejemplo completo

Enlaces de patrones con is.

is_patterns.zolo
Playground
enum Reading { Value(int), Missing }

fn read(input: Reading) -> int {
    guard input is .Value(value) else { return 0 }
    value
}

let input: Reading = .Value(7)
if input is .Value(value) && value > 0 {
    assert(value == 7)
}
assert(read(input) == 7)
assert(read(Reading.Missing) == 0)
let values = [if input is .Value(value) => value]
let names = #{if input is .Value(value) => [value]: "selected"}
assert(values[0] == 7)
assert(names[7] == "selected")

Reglas y comportamiento

Condiciones y recuperación de errores · Documentación

Desde un checkout del repositorio:

zolo examples/features/is_patterns.zolo

Índice global

Encuentra tu camino por Zolo

Prueba una idea

Empieza aquí

9 resultados

9 resultados

enespt-br