Yes, this is exactly the sort of object Rich Hickey criticized in his Maybe Not talk.
That’s not a very meaningful statement unless you say what it’s superior for. I certainly like Unions, but there are cases where sum types are nice (like type checking).
An important thing to note here is that you can build sum types if you have unions, but you can’t build unions if all you have are sum types. In some circumstances, having a more restricted type system like the one you get with sum types can be useful.
Sum types are useful if what you desire is very strong coupling between different parts of your code, and unions / subtyping are useful if you want more flexible, loosely coupled ‘open’ code.