class T::Enum
def self.inherited(child_class)
def self.inherited(child_class) super raise "Inheriting from children of T::Enum is prohibited" if self != T::Enum # "oj" gem JSON support if Object.const_defined?(:Oj) Object.const_get(:Oj).register_odd(child_class, child_class, :try_deserialize, :serialize) end end