73 releases (20 stable)

new 3.1.0 May 16, 2024
3.0.0 Jan 11, 2024
2.0.1 Jan 2, 2024
2.0.0 Jun 30, 2023
0.6.0 Nov 10, 2020

#381 in Algorithms

Download history 32546/week @ 2024-01-30 30681/week @ 2024-02-06 28294/week @ 2024-02-13 32694/week @ 2024-02-20 32891/week @ 2024-02-27 29511/week @ 2024-03-05 28402/week @ 2024-03-12 31841/week @ 2024-03-19 27817/week @ 2024-03-26 31710/week @ 2024-04-02 29663/week @ 2024-04-09 32006/week @ 2024-04-16 39306/week @ 2024-04-23 33754/week @ 2024-04-30 38198/week @ 2024-05-07 36960/week @ 2024-05-14

154,392 downloads per month
Used in 172 crates (3 directly)

Apache-2.0…

9KB
103 lines

cap-rand

Capability-based random number generators

Github Actions CI Status crates.io page docs.rs docs

The cap-rand crate provides a capability-based interface to random number generators via the rand crate.


lib.rs:

Capability-based random number generators

This corresponds to rand.

Capability-based APIs represent access to external resources as values which can be passed around between different parts of a program.

Two notable features are the OsRng and CapRng types, which wrap up access to the operating system entropy source in capability values.

This crate uses the existing rand::SeedableRng trait rather than having its own version, however while rand::SeedableRng is mostly just a pure interface, it provides a from_entropy function which directly reads from the operating system entropy source. To preserve the capability-based interface, avoid using rand::SeedableRng's from_entropy function on any of the types that implement that trait; use std_rng_from_entropy instead.

Dependencies

~325KB