| 242 | |
| 243 | template <template <class...> class List, class... Types> |
| 244 | consteval auto _canonicalize(List<Types...> *) noexcept |
| 245 | { |
| 246 | using types_t = __static_vector<__type_index, sizeof...(Types)>; |
| 247 | constexpr auto types = _func::_canonicalize_impl(types_t{__mtypeid<Types>...}); |
| 248 | return _func::_canonicalize_splice<types, List>(__make_indices<types.size()>()); |
| 249 | } |
| 250 | |
| 251 | template <class Sigs> |
| 252 | using _canonical_t = decltype(_func::_canonicalize(static_cast<Sigs *>(nullptr))); |
no test coverage detected