10 EmptyVariant() =
delete;
13 template<
typename List>
14 struct VariantOrEmptyHelper;
16 template<
typename... Types>
17 struct VariantOrEmptyHelper<List<Types...>> : TypeConstant<vocab::Variant<Types...>> {};
20 struct VariantOrEmptyHelper<List<>> : TypeConstant<EmptyVariant> {};
23template<
typename... Types>