with_kwを使って構造体を作る

October 10, 2020

参考: mauro3/Parameters.jl: Types with default field values, keyword constructors and (un-)pack macros

インストールは Pkg でaddする。
@with_kwが使えるようになり、これをつけた構造体では定義時にデフォルト値を設定できるようになり、パラメータを渡して初期化できるようになる。
公式でほしいぐらい便利。

using Parameters

# @with_kwをつけて構造体を定義する
@with_kw struct Todo
  title::String
  done::Bool = false # デフォルト値を設定できようになる
end

# パラメータを渡して初期化することができようになる
todo = Todo(title = "new todo", done = true)