mirror of
https://github.com/cemu-project/Cemu.git
synced 2024-12-25 01:01:52 +01:00
style: use std::enable_if & co instead of boost:: (#153)
This commit is contained in:
parent
ef1ce59931
commit
8c617a39b7
@ -22,7 +22,7 @@ constexpr T bswap(T i)
|
||||
template <typename T>
|
||||
constexpr T SwapEndian(T value)
|
||||
{
|
||||
if constexpr (boost::is_integral<T>::value)
|
||||
if constexpr (std::is_integral<T>::value)
|
||||
{
|
||||
#ifdef _MSC_VER
|
||||
if constexpr (sizeof(T) == sizeof(uint32_t))
|
||||
@ -33,7 +33,7 @@ constexpr T SwapEndian(T value)
|
||||
|
||||
return (T)bswap((std::make_unsigned_t<T>)value);
|
||||
}
|
||||
else if constexpr (boost::is_floating_point<T>::value)
|
||||
else if constexpr (std::is_floating_point<T>::value)
|
||||
{
|
||||
if constexpr (sizeof(T) == sizeof(uint32_t))
|
||||
{
|
||||
@ -46,18 +46,18 @@ constexpr T SwapEndian(T value)
|
||||
return *(T*)&tmp;
|
||||
}
|
||||
}
|
||||
else if constexpr (boost::is_enum<T>::value)
|
||||
else if constexpr (std::is_enum<T>::value)
|
||||
{
|
||||
return (T)SwapEndian((std::underlying_type_t<T>)value);
|
||||
}
|
||||
else if constexpr (boost::is_base_of<Latte::LATTEREG, T>::value)
|
||||
else if constexpr (std::is_base_of<Latte::LATTEREG, T>::value)
|
||||
{
|
||||
const auto tmp = bswap<uint32_t>(*(uint32_t*)&value);
|
||||
return *(T*)&tmp;
|
||||
}
|
||||
else
|
||||
{
|
||||
static_assert(boost::is_integral<T>::value, "unsupported betype specialization!");
|
||||
static_assert(std::is_integral<T>::value, "unsupported betype specialization!");
|
||||
}
|
||||
|
||||
return value;
|
||||
|
@ -96,14 +96,14 @@ public:
|
||||
m_value = v;
|
||||
}
|
||||
|
||||
template <typename = typename boost::enable_if<boost::is_same<TType, std::string>>>
|
||||
template <typename = typename std::enable_if<std::is_same_v<TType, std::string>>>
|
||||
void SetValue(std::string_view v)
|
||||
{
|
||||
std::lock_guard lock(m_mutex);
|
||||
m_value = v;
|
||||
}
|
||||
|
||||
template <typename = typename boost::enable_if<boost::is_same<TType, std::wstring>>>
|
||||
template <typename = typename std::enable_if<std::is_same_v<TType, std::wstring>>>
|
||||
void SetValue(std::wstring_view v)
|
||||
{
|
||||
std::lock_guard lock(m_mutex);
|
||||
@ -171,21 +171,21 @@ public:
|
||||
}
|
||||
|
||||
// init from enum with iterators
|
||||
template<typename TEnum = typename boost::enable_if_c<boost::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
template<typename TEnum = typename std::enable_if<std::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
constexpr ConfigValueBounds()
|
||||
: base_type(), m_min_value(begin(TEnum{})), m_max_value(rbegin(TEnum{}))
|
||||
{
|
||||
assert(m_min_value <= this->GetInitValue() && this->GetInitValue() <= m_max_value);
|
||||
}
|
||||
|
||||
template<typename TEnum = typename boost::enable_if_c<boost::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
template<typename TEnum = typename std::enable_if<std::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
constexpr ConfigValueBounds(const TType& init_value)
|
||||
: base_type(std::forward<TType>(init_value)), m_min_value(begin(init_value)), m_max_value(rbegin(init_value))
|
||||
{
|
||||
assert(m_min_value <= init_value && init_value <= m_max_value);
|
||||
}
|
||||
|
||||
template<typename TEnum = typename boost::enable_if_c<boost::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
template<typename TEnum = typename std::enable_if<std::is_enum<TType>::value && EnableEnumIterators<TType>::enable, TType>>
|
||||
constexpr ConfigValueBounds(TType&& init_value)
|
||||
: base_type(std::forward<TType>(init_value)), m_min_value(begin(init_value)), m_max_value(rbegin(init_value))
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user