diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2016-07-27 23:46:20 -0700 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2016-07-27 23:46:20 -0700 |
| commit | 711e3d71b967961da9bf2ed6a2bd5cce7dfdfb2d (patch) | |
| tree | 476bd3a6b9a162d354e3cb453ad9846531a9e26c /std | |
| parent | 1fa0cabf9dd0c2016a60c23bb616f0f39daf1dfd (diff) | |
| download | zig-711e3d71b967961da9bf2ed6a2bd5cce7dfdfb2d.tar.gz zig-711e3d71b967961da9bf2ed6a2bd5cce7dfdfb2d.zip | |
std: add vaporware plans for floating point builtins
Diffstat (limited to 'std')
| -rw-r--r-- | std/rand.zig | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/std/rand.zig b/std/rand.zig index bbbe70f7b0..8bd03ecb74 100644 --- a/std/rand.zig +++ b/std/rand.zig @@ -77,8 +77,12 @@ pub struct Rand { /// Get a floating point value in the range 0.0..1.0. pub fn float(r: &Rand, inline T: type) -> T { + // TODO Implement this way instead: + // const int = @int_type(false, @sizeof(T) * 8); + // const mask = ((1 << @float_mantissa_bit_count(T)) - 1); + // const rand_bits = r.rng.scalar(int) & mask; + // return @float_compose(T, false, 0, rand_bits) - 1.0 const int_type = @int_type(false, @sizeof(T) * 8); - // TODO switch statement for constant values const precision = if (T == f32) { 16777216 } else if (T == f64) { |
