#sfc #random

no-std rand_sfc

Chris Doty-Humphrey's SFC PRNGs

1 unstable release

new 0.1.0 Feb 19, 2025

#1133 in Algorithms

Apache-2.0 OR MIT

17KB
237 lines

sfc-rs

CI Version MSRV Docs License

sfc-rs (rand_sfc) is an implementation of Chris Doty-Humphrey's Small Fast Chaotic PRNGs written in pure Rust.

This crate provides:

  • sfc64
  • sfc32
  • sfc16

This crate supports version 4 of the SFC algorithms.

Usage

Add this to your Cargo.toml:

[dependencies]
rand_sfc = "0.1.0"

Crate features

serde

Enables the serde crate.

no_std support

This crate supports no_std mode.

Documentation

See the documentation for more details.

Minimum supported Rust version

The minimum supported Rust version (MSRV) of this library is v1.63.0.

Source code

The upstream repository is available at https://github.com/sorairolake/sfc-rs.git.

Changelog

Please see CHANGELOG.adoc.

Contributing

Please see CONTRIBUTING.adoc.

Acknowledgment

This crate depends on the rand_core crate created by the Rand project.

The implementation of this crate is based on the reference implementation provided by PractRand, which is licensed under the public domain.

License

Copyright (C) 2025 Shun Sakai (see AUTHORS.adoc)

This library is distributed under the terms of either the Apache License 2.0 or the MIT License.

This project is compliant with version 3.2 of the REUSE Specification. See copyright notices of individual files for more details on copyright and licensing information.

Dependencies

~1MB
~14K SLoC