class T::Enum
def initialize(serialized_val=nil)
def initialize(serialized_val=nil) 'T::Enum is abstract' if self.class == T::Enum lf.class.started_initializing? e "Must instantiate all enum values of #{self.class} inside 'enums do'." f.class.fully_initialized? e "Cannot instantiate a new enum value of #{self.class} after it has been initialized." ized_val = serialized_val.frozen? ? serialized_val : serialized_val.dup.freeze lized_val = T.let(serialized_val, T.nilable(SerializedVal)) _name = T.let(nil, T.nilable(Symbol)) lass._register_instance(self)