...

/

Pattern Matching and Updating Maps

Pattern Matching and Updating Maps

Learn to perform pattern matching with maps and to update them.

The question we most often ask of our maps is, “Do you have the following keys (and maybe values)?” For example, let’s use this map: person = %{ name: "Dave", height: 1.88 }.

  • Is there an entry with the key :name?
   iex> %{ name: a_name } = person 
   %{height: 1.88, name: "Dave"} 
   iex> a_name
   "Dave"
  • Are there entries for the keys :name and :height?
   iex> %{ name: _, height: _ } = person
   %{height: 1.88, name: "Dave"}
  • Does the entry with key :name have the value "Dave"?
   iex> %{ name: "Dave" } = person
   %{height: 1.88, name:
...