mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-07 08:08:50 +00:00
remove private _random_u64 and move it's functionality into public uint64
This commit is contained in:
@@ -56,13 +56,6 @@ query_info :: proc(gen := context.random_generator) -> Generator_Query_Info {
|
||||
}
|
||||
|
||||
|
||||
@(private)
|
||||
_random_u64 :: proc(gen := context.random_generator) -> (res: u64) {
|
||||
ok := runtime.random_generator_read_ptr(gen, &res, size_of(res))
|
||||
assert(ok, "uninitialized gen/context.random_generator")
|
||||
return
|
||||
}
|
||||
|
||||
/*
|
||||
Generates a random 32 bit value using the provided random number generator. If no generator is provided the global random number generator will be used.
|
||||
|
||||
@@ -84,7 +77,7 @@ Possible Output:
|
||||
|
||||
*/
|
||||
@(require_results)
|
||||
uint32 :: proc(gen := context.random_generator) -> (val: u32) { return u32(_random_u64(gen)) }
|
||||
uint32 :: proc(gen := context.random_generator) -> (val: u32) {return u32(uint64(gen))}
|
||||
|
||||
/*
|
||||
Generates a random 64 bit value using the provided random number generator. If no generator is provided the global random number generator will be used.
|
||||
@@ -107,7 +100,11 @@ Possible Output:
|
||||
|
||||
*/
|
||||
@(require_results)
|
||||
uint64 :: proc(gen := context.random_generator) -> (val: u64) { return _random_u64(gen) }
|
||||
uint64 :: proc(gen := context.random_generator) -> (val: u64) {
|
||||
ok := runtime.random_generator_read_ptr(gen, &val, size_of(val))
|
||||
assert(ok, "uninitialized gen/context.random_generator")
|
||||
return
|
||||
}
|
||||
|
||||
/*
|
||||
Generates a random 128 bit value using the provided random number generator. If no generator is provided the global random number generator will be used.
|
||||
@@ -131,8 +128,8 @@ Possible Output:
|
||||
*/
|
||||
@(require_results)
|
||||
uint128 :: proc(gen := context.random_generator) -> (val: u128) {
|
||||
a := u128(_random_u64(gen))
|
||||
b := u128(_random_u64(gen))
|
||||
a := u128(uint64(gen))
|
||||
b := u128(uint64(gen))
|
||||
return (a<<64) | b
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user