From 0ccdc511cebfa3db1dfcbd05fe849843da117657 Mon Sep 17 00:00:00 2001 From: Jacob Young Date: Sun, 18 Dec 2022 01:23:36 -0500 Subject: [PATCH] rand: add pub to next/jump I specifically needed jump for an application and it doesn't appear to be exposed in any way. --- lib/std/rand/Xoroshiro128.zig | 4 ++-- lib/std/rand/Xoshiro256.zig | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/std/rand/Xoroshiro128.zig b/lib/std/rand/Xoroshiro128.zig index 60907a017b..6ddd2eb89e 100644 --- a/lib/std/rand/Xoroshiro128.zig +++ b/lib/std/rand/Xoroshiro128.zig @@ -20,7 +20,7 @@ pub fn random(self: *Xoroshiro128) Random { return Random.init(self, fill); } -fn next(self: *Xoroshiro128) u64 { +pub fn next(self: *Xoroshiro128) u64 { const s0 = self.s[0]; var s1 = self.s[1]; const r = s0 +% s1; @@ -33,7 +33,7 @@ fn next(self: *Xoroshiro128) u64 { } // Skip 2^64 places ahead in the sequence -fn jump(self: *Xoroshiro128) void { +pub fn jump(self: *Xoroshiro128) void { var s0: u64 = 0; var s1: u64 = 0; diff --git a/lib/std/rand/Xoshiro256.zig b/lib/std/rand/Xoshiro256.zig index b81b5178aa..42ad43c445 100644 --- a/lib/std/rand/Xoshiro256.zig +++ b/lib/std/rand/Xoshiro256.zig @@ -22,7 +22,7 @@ pub fn random(self: *Xoshiro256) Random { return Random.init(self, fill); } -fn next(self: *Xoshiro256) u64 { +pub fn next(self: *Xoshiro256) u64 { const r = math.rotl(u64, self.s[0] +% self.s[3], 23) +% self.s[0]; const t = self.s[1] << 17; @@ -40,7 +40,7 @@ fn next(self: *Xoshiro256) u64 { } // Skip 2^128 places ahead in the sequence -fn jump(self: *Xoshiro256) void { +pub fn jump(self: *Xoshiro256) void { var s: u256 = 0; var table: u256 = 0x39abdc4529b1661ca9582618e03fc9aad5a61266f0c9392c180ec6d33cfd0aba;