From 827cb24023d38c5e14397bd50e363962528b4329 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sat, 15 Jun 2024 14:47:37 +0100 Subject: [PATCH] Add random_generator.odin --- base/runtime/random_generator.odin | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 base/runtime/random_generator.odin diff --git a/base/runtime/random_generator.odin b/base/runtime/random_generator.odin new file mode 100644 index 000000000..2b66b3e0b --- /dev/null +++ b/base/runtime/random_generator.odin @@ -0,0 +1,27 @@ +package runtime + +@(require_results) +random_generator_read_bytes :: proc(rg: Random_Generator, p: []byte) -> bool { + if rg.procedure != nil { + rg.procedure(rg.data, .Read, p) + return true + } + return false +} + +@(require_results) +random_generator_read_ptr :: proc(rg: Random_Generator, p: rawptr, len: uint) -> bool { + if rg.procedure != nil { + rg.procedure(rg.data, .Read, ([^]byte)(p)[:len]) + return true + } + return false +} + +@(require_results) +random_generator_query_info :: proc(rg: Random_Generator) -> (info: Random_Generator_Query_Info) { + if rg.procedure != nil { + rg.procedure(rg.data, .Query_Info, ([^]byte)(&info)[:size_of(info)]) + } + return +} \ No newline at end of file