return "Set<std::string>";
} else if constexpr (std::same_as<T, Client*>) {
return "Set<Client*>";
- } else if constexpr (std::same_as<T, Channel*>) {
- return "Set<Channel*>";
} else {
- static_assert(false);
+ // TODO: revert this once clang 17+ is more widespread
+ static_assert(std::same_as<T, Channel*>);
+ return "Set<Channel*>";
}
};
static constexpr const char *mtname = get_mtname();
s.insert(key);
} else if constexpr (std::same_as<T, Client*>) {
s.insert(*(Client **)luaL_checkudata(L, 3, "Client"));
- } else if constexpr (std::same_as<T, Channel*>) {
- s.insert(*(Channel **)luaL_checkudata(L, 3, "Channel"));
} else {
- static_assert(false);
+ static_assert(std::same_as<T, Channel*>);
+ s.insert(*(Channel **)luaL_checkudata(L, 3, "Channel"));
}
return 0;
}
return "Set<std::string>::Iter";
} else if constexpr (std::same_as<T, Client*>) {
return "Set<Client*>::Iter";
- } else if constexpr (std::same_as<T, Channel*>) {
- return "Set<Channel*>::Iter";
} else {
- static_assert(false);
+ static_assert(std::same_as<T, Channel*>);
+ return "Set<Channel*>::Iter";
}
};
static constexpr const char *mtname = get_mtname();