Pular para o conteúdo

07 · Casamento de Padrões

Leia campos aninhados no padrão

Escreva { address.city: city } para criar um binding de um campo aninhado sem repetir as chaves dos records. O caminho completo é conferido no tipo de entrada; o binding city pertence ao escopo em que o padrão foi bem-sucedido.

Nesta página

Escreva { address.city: city } para criar um binding de um campo aninhado sem repetir as chaves dos records. O caminho completo é conferido no tipo de entrada; o binding city pertence ao escopo em que o padrão foi bem-sucedido.

Exemplo completo

Leia campos aninhados no padrão.

07-nested-destructure.zolo
Playground
struct Address { city: str, postcode: int }
struct Profile { name: str }
struct User { address: Address, profile: Profile }

let user = User {
    address: Address { city: "Recife", postcode: 50000 },
    profile: Profile { name: "Ada" }
}
fn mailing_label(user: User) -> str {
    let { address.city: city, address.postcode: postcode, profile.name: name } = user
    assert(city == "Recife")
    assert(postcode == 50000)
    assert(name == "Ada")
    "{name}: {city}, {postcode}"
}
print(mailing_label(user))

Referência

Referência · Programa fonte

zolo run examples/features/40-syntax-fourth/07-nested-destructure.zolo --no-cache

Veja também

Índice global

Encontre seu caminho pela Zolo

Experimente uma ideia

Comece por aqui

9 resultados

9 resultados

enespt-br