[Ruby][Sorbet] T::Enumのnewには引数を渡すべし

下記のように特段設定しなければserializeしてもスネークケースにならない(キャメルはスネークになってほしいのだが…)。
Railsのenumと組み合わせる形で使うときも使い勝手が悪い。

1
2
3
4
5
6
7
class A < T::Enum
  enums do
    HogeHoge = new
  end
end

A::HogeHoge.serialize # -> hogehoge

newに引数を渡すとそれがserializeの結果になる。
deserializeも引数に渡した文字列でできる。

1
2
3
4
5
6
7
8
class A < T::Enum
  enums do
    HogeHoge = new('hoge_hoge')
  end
end

A::HogeHoge.serialize # -> hoge_hoge
A.deserialize('hoge_hoge') # -> <A::HogeHoge>
Built with Hugo
テーマ StackJimmy によって設計されています。