mirror of
https://github.com/enduro2d/enduro2d.git
synced 2025-12-14 16:09:06 +07:00
fix warnings in bit functions
This commit is contained in:
@@ -303,7 +303,7 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
T>
|
T>
|
||||||
set_flags(T flags, U flag_mask) noexcept {
|
set_flags(T flags, U flag_mask) noexcept {
|
||||||
return flags | flag_mask;
|
return flags | static_cast<T>(flag_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
template < typename T, typename U >
|
template < typename T, typename U >
|
||||||
@@ -321,7 +321,7 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
T>
|
T>
|
||||||
flip_flags(T flags, U flag_mask) noexcept {
|
flip_flags(T flags, U flag_mask) noexcept {
|
||||||
return flags ^ flag_mask;
|
return flags ^ static_cast<T>(flag_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
template < typename T, typename U >
|
template < typename T, typename U >
|
||||||
@@ -339,7 +339,7 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
T>
|
T>
|
||||||
clear_flags(T flags, U flag_mask) noexcept {
|
clear_flags(T flags, U flag_mask) noexcept {
|
||||||
return flags & ~flag_mask;
|
return flags & ~static_cast<T>(flag_mask);
|
||||||
}
|
}
|
||||||
|
|
||||||
template < typename T, typename U >
|
template < typename T, typename U >
|
||||||
@@ -357,7 +357,7 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_any_flags(T flags, U flag_mask) noexcept {
|
check_any_flags(T flags, U flag_mask) noexcept {
|
||||||
return !!(flags & flag_mask);
|
return !!(flags & static_cast<T>(flag_mask));
|
||||||
}
|
}
|
||||||
|
|
||||||
template < typename T, typename U >
|
template < typename T, typename U >
|
||||||
@@ -366,7 +366,7 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_all_flags(T flags, U flag_mask) noexcept {
|
check_all_flags(T flags, U flag_mask) noexcept {
|
||||||
return flag_mask == (flags & flag_mask);
|
return static_cast<T>(flag_mask) == (flags & static_cast<T>(flag_mask));
|
||||||
}
|
}
|
||||||
|
|
||||||
template < typename T, typename U >
|
template < typename T, typename U >
|
||||||
@@ -375,10 +375,10 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_and_set_any_flags(T& flags, U flag_mask) noexcept {
|
check_and_set_any_flags(T& flags, U flag_mask) noexcept {
|
||||||
if ( flag_mask == (flags & flag_mask) ) {
|
if ( static_cast<T>(flag_mask) == (flags & static_cast<T>(flag_mask)) ) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
flags |= flag_mask;
|
flags |= static_cast<T>(flag_mask);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -388,10 +388,10 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_and_set_all_flags(T& flags, U flag_mask) noexcept {
|
check_and_set_all_flags(T& flags, U flag_mask) noexcept {
|
||||||
if ( !!(flags & flag_mask) ) {
|
if ( !!(flags & static_cast<T>(flag_mask)) ) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
flags |= flag_mask;
|
flags |= static_cast<T>(flag_mask);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -401,10 +401,10 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_and_clear_any_flags(T& flags, U flag_mask) noexcept {
|
check_and_clear_any_flags(T& flags, U flag_mask) noexcept {
|
||||||
if ( !(flags & flag_mask) ) {
|
if ( !(flags & static_cast<T>(flag_mask)) ) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
flags &= ~flag_mask;
|
flags &= ~static_cast<T>(flag_mask);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -414,10 +414,10 @@ namespace e2d::math
|
|||||||
std::is_convertible_v<U,T>,
|
std::is_convertible_v<U,T>,
|
||||||
bool>
|
bool>
|
||||||
check_and_clear_all_flags(T& flags, U flag_mask) noexcept {
|
check_and_clear_all_flags(T& flags, U flag_mask) noexcept {
|
||||||
if ( flag_mask != (flags & flag_mask) ) {
|
if ( static_cast<T>(flag_mask) != (flags & static_cast<T>(flag_mask)) ) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
flags &= ~flag_mask;
|
flags &= ~static_cast<T>(flag_mask);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user