Skip to content

Instantly share code, notes, and snippets.

@ezequieloliveiralima
Created April 6, 2020 21:08
Show Gist options
  • Save ezequieloliveiralima/6645e245eb9a08f905437d09af92821e to your computer and use it in GitHub Desktop.
Save ezequieloliveiralima/6645e245eb9a08f905437d09af92821e to your computer and use it in GitHub Desktop.
class Solucao {
var pessoaLogada: Pessoa?
func cadastrar(nome: String) {
pessoaLogada = Pessoa(nome: nome, cachorros: [])
}
func adicionar(cachorro: Cachorro) {
pessoaLogada?.tem(maisUm: cachorro)
}
func sair() {
pessoaLogada = nil
}
func atualizar(nome: String) {
pessoaLogada?.nome = nome
}
func atualizar(cachorro: inout Cachorro, nome: String?, raca: String?) {
if let nome = nome {
cachorro.nome = nome
}
if let raca = raca {
cachorro.raca = raca
}
}
}
// MARK: - Nossa solução rodando 😍
var solucao = Solucao()
solucao.cadastrar(nome: "Gerlandio")
solucao.adicionar(cachorro: Cachorro(nome: "Matador", raca: "Chihuahua"))
solucao.atualizar(nome: "Gêgê")
solucao.atualizar(cachorro: solucao.pessoaLogada!.cachorros[0], nome: "Fofinho", raca: nil)
solucao.sair()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment