fstd 0.1.2

A fast standard library for Rust.
Documentation
use criterion::{criterion_group, criterion_main, Criterion};
use fstd::rand;

pub fn criterion_benchmark(c: &mut Criterion) {
    let r = rand::WyRng::from_seed_u64(213124123125);
    let random = rand::WyRng::new().u64(95..100);
    c.bench_function("local_u64(..)", |b| b.iter(|| r.u64(..)));
    c.bench_function("local_u64(0..100)", |b| b.iter(|| r.u64(0..100)));
    c.bench_function("local_u64(0..random)", |b| b.iter(|| r.u64(0..random)));
    c.bench_function("local_u64(0..=random)", |b| b.iter(|| r.u64(0..=random)));
    c.bench_function("local_u64(..random)", |b| b.iter(|| r.u64(..random)));
    c.bench_function("local_f64()", |b| b.iter(|| r.f64()));

    c.bench_function("thread_u64(..)", |b| b.iter(|| rand::u64(..)));
    c.bench_function("thread_u64(0..100)", |b| b.iter(|| rand::u64(0..100)));
    c.bench_function("thread_u64(0..random)", |b| b.iter(|| rand::u64(0..random)));
    c.bench_function("thread_u64(0..=random)", |b| {
        b.iter(|| rand::u64(0..=random))
    });
    c.bench_function("thread_u64(..random)", |b| b.iter(|| rand::u64(..random)));
    c.bench_function("thread_f64()", |b| b.iter(|| rand::f64()));
}

criterion_group!(benches, criterion_benchmark);
criterion_main!(benches);