1#ifndef LIBSBX_UTILITY_CAST_HPP_
2#define LIBSBX_UTILITY_CAST_HPP_
6namespace sbx::utility {
9[[nodiscard]]
constexpr auto underlying_cast(Type value)
noexcept -> std::underlying_type_t<Type> {
10 return static_cast<std::underlying_type_t<Type>
>(value);
13template<
typename Type>
14[[nodiscard]]
constexpr auto implicit_cast(std::type_identity_t<Type> value)
noexcept(std::is_nothrow_move_constructible_v<Type>) -> Type {