대충 map을 이용하면 되는데... 좀더 깔끔한 방법이 있다.
자세한 것은 참조 링크 참조.
결론은 아래처럼 NamedArgs를 mix.exs 의존성에 추가하고 필요한 모듈에서 use NamedArgs만 추가하면 끝.
def deps do
[
{:named_args, "~> 0.1.0"}
]
end
사용은 이렇게...
defmodule Talk do
use NamedArgs
def introduction(opts \\ [name: "Sarah", birthday: "1985-12-30"]) do
IO.puts "Hi my name is #{opts[:name]} and I was born on #{opts[:birthday]}"
end
end
refs:
https://blog.praveenperera.com/named-arugments-with-default-values-in-elixir/
https://github.com/mgwidmann/named_args
happy hackin'