
Segundo adocumentação do Elixir, umatom é uma constante cujo valor é o seu próprio nome. E para desenvolvedores que vieram do Ruby, assim como eu, umatom é análogo ao:symbol.
É comum o uso de atoms emlists,tuplas emaps:
defmoduleExampledodefexample_paramsdo# tuplatuple={:ok,"This is a tuple"}# listlist=[:slug,:title]# mapmap=%{name:"Diego",age:35,country:"Brazil"}endend
Em Elixir os booleanostrue
efalse
, por exemplo, também sãoatoms:
iex>true==:true>trueiex>false==:false>falseiex>is_atom(false)>trueiex>is_boolean(:false)>true
Um outro exemplo é quando usamosatoms como referência de status de uma determinada requisição:
defmoduleExampleControllerdo#...defdelete_person(conn,%{"id"=>id})doperson=Person.get_person!(id){:ok,_person}=Person.Repo.delete(person)conn|>put_flash(:info,"Person deleted successfully.")|>redirect(to:person_path(conn,:index))endend
No exemplo acima:ok
indica que foi deletado com sucesso e que, em seguida, foi disparado uma "flash message" com status:info
informando que "a pessoa foi deletada com sucesso" e, posteriormente, é feito o redirecionamento para a:index
.
Top comments(6)

- LocationBrazil
- Joined
show

- Email
- LocationBrazil
- Joined
Obrigado! =D

- Email
- LocationBrazil
- Joined
Obrigado! =D

- Email
- LocationBrazil
- Joined
Obrigado! =D
For further actions, you may consider blocking this person and/orreporting abuse