[Ruby][Sorbet] T.absurdで分岐処理のし忘れを防げるT.absurdが書いてあると下記のように処理の記述漏れがある場合には型エラーになります。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 class Hoge < T::Enum extend T::Sig enums do A = new B = new C = new end def to_s case self when A then 'a' when B then 'b' else T.absurd(self) # Cが処理されてないのでエラーとなる end end end 網羅的な分岐(主にenumの処理)を行うときはT.abusrd使いましょう。refhttps://sorbet.org/docs/exhaustiveness