Prechádzať zdrojové kódy

AK: Extend round_to_power_of_two to types other than `unsigned`

The previous implementation hardcoded unsigned, when the same logic
easily extends to unsigned long, signed types, and other Integral types.
Andrew Kaster 4 rokov pred
rodič
commit
eae14f4ba6
1 zmenil súbory, kde vykonal 2 pridanie a 1 odobranie
  1. 2 1
      AK/StdLibExtras.h

+ 2 - 1
AK/StdLibExtras.h

@@ -10,7 +10,8 @@
 
 #include <AK/Assertions.h>
 
-constexpr unsigned round_up_to_power_of_two(unsigned value, unsigned power_of_two)
+template<typename T, typename U>
+constexpr auto round_up_to_power_of_two(T value, U power_of_two) requires(IsIntegral<T>&& IsIntegral<U>)
 {
     return ((value - 1) & ~(power_of_two - 1)) + power_of_two;
 }