module T::Enumerable

def self.[](type)

def self.[](type)
  if type.is_a?(T::Types::Untyped)
    T::Types::TypedEnumerable::Untyped.new
  else
    T::Types::TypedEnumerable.new(type)
  end
end