module T

def self.any(type_a, type_b, *types)

T.any(, , ...) -- matches any of the types listed
def self.any(type_a, type_b, *types)
  type_a = T::Utils.coerce(type_a)
  type_b = T::Utils.coerce(type_b)
  types = types.map {|t| T::Utils.coerce(t)} if !types.empty?
  T::Types::Union::Private::Pool.union_of_types(type_a, type_b, types)
end