Revision 2a3f669979acd4ca7356c5e046d7019a0d7f504c authored by Rafael Fourquet on 01 October 2023, 15:10:30 UTC, committed by Rafael Fourquet on 12 October 2023, 10:09:28 UTC
The most convenient way to define `seed!` for new RNGs is via an another RNG, with `seed!(rng::AbstractRNG, seeder::AbstractRNG)`. But RNGs want to also support more usual seeds. In order to allow them to only define the method above, a new `SeedHasher` RNG is implemented, whose purpose is to convert an initial given seed into a stream of random numbers. Given that it's not always "safe" to seed an RNG from another RNG, `SeedHasher` uses a strong cryptographic hash (SHA2) to produces random streams. The generic `seed!(rng::AbstractRNG, seed)` method now takes care of forwarding the call to `seed!(rng, SeedHasher(seed))`.
1 parent cf363f9
File | Mode | Size |
---|---|---|
.devcontainer | ||
.github | ||
base | ||
cli | ||
contrib | ||
deps | ||
doc | ||
etc | ||
src | ||
stdlib | ||
test | ||
.buildkite-external-version | -rw-r--r-- | 5 bytes |
.clang-format | -rw-r--r-- | 3.3 KB |
.clangd | -rw-r--r-- | 114 bytes |
.codecov.yml | -rw-r--r-- | 52 bytes |
.git-blame-ignore-revs | -rw-r--r-- | 371 bytes |
.gitattributes | -rw-r--r-- | 65 bytes |
.gitignore | -rw-r--r-- | 523 bytes |
.mailmap | -rw-r--r-- | 12.7 KB |
CITATION.bib | -rw-r--r-- | 513 bytes |
CITATION.cff | -rw-r--r-- | 940 bytes |
CONTRIBUTING.md | -rw-r--r-- | 23.4 KB |
HISTORY.md | -rw-r--r-- | 372.8 KB |
LICENSE.md | -rw-r--r-- | 1.3 KB |
Make.inc | -rw-r--r-- | 55.7 KB |
Makefile | -rw-r--r-- | 30.5 KB |
NEWS.md | -rw-r--r-- | 3.4 KB |
README.md | -rw-r--r-- | 7.3 KB |
THIRDPARTY.md | -rw-r--r-- | 3.8 KB |
VERSION | -rw-r--r-- | 11 bytes |
julia.spdx.json | -rw-r--r-- | 35.8 KB |
pkgimage.mk | -rw-r--r-- | 5.8 KB |
sysimage.mk | -rw-r--r-- | 4.2 KB |
Computing file changes ...