From a1b3490764687e31568037dbac8aa5d6972f6c2d Mon Sep 17 00:00:00 2001 From: Bananymous Date: Wed, 29 May 2024 20:00:47 +0300 Subject: [PATCH] Kernel: Improve random number generation for unsigned types --- kernel/include/kernel/Random.h | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/kernel/include/kernel/Random.h b/kernel/include/kernel/Random.h index 939329b6..3e63ed03 100644 --- a/kernel/include/kernel/Random.h +++ b/kernel/include/kernel/Random.h @@ -11,14 +11,12 @@ namespace Kernel static void initialize(); static uint32_t get_u32(); static uint64_t get_u64(); - template - static T get(); + template requires (sizeof(T) == 4) + static T get() { return Random::get_u32(); } + template requires (sizeof(T) == 8) + static T get() { return Random::get_u64(); } }; - template<> - inline uint32_t Random::get() { return Random::get_u32(); } - template<> - inline uint64_t Random::get() { return Random::get_u64(); } }