class Sorbet::Private::Serialize
def constant(const, value)
def constant(const, value) if KEYWORDS.include?(const.to_sym) return "# Illegal constant name: #{const}" end if defined?(T::Types::TypeMember) && Sorbet::Private::RealStdlib.real_is_a?(value, T::Types::TypeMember) value.variance == :invariant ? " #{const} = type_member" : " #{const} = type_member(#{value.variance.inspect})" elsif defined?(T::Types::TypeTemplate) && Sorbet::Private::RealStdlib.real_is_a?(value, T::Types::TypeTemplate) value.variance == :invariant ? " #{const} = type_template" : " #{const} = type_template(#{value.variance.inspect})" else " #{const} = ::T.let(nil, ::T.untyped)" end end