この記事は、Elixir Advent Calendar 2023 シリーズ8 の12日目です
昨日は、私で 「【TIPS】構造体とマップの相互変換」 でした
【本コラムは、1分で読め、2分で試せます】
piacere です、ご覧いただいてありがとございます
Elixirの構造体って、マップのように使える割には、一方でMapモジュール関数が使えなかったりと面倒なこと、ありませんか?
そういうシーンで困らないように、相互変換をTIPSとしてまとめておきました … Elixirの様々な書き方のトレーニングにもなると思います
マップから構造体へ変換
struct(Range, %{first: 1, last: 10, step: 2})
%{first: 1, last: 10, step: 2} |> then(&struct(Range, &1))
構造体からマップへ変換
%Range{first: 1, last: 10, step: 2} |> Map.from_struct