FullLongPermutation
Full 64-bit integer permutation over the entire signed Long domain.
Uses an invertible 64-bit hash built from XOR, shifts, and odd multipliers with per-round keys. No tables are stored; encode and decode apply forward and inverse rounds respectively.
Parameters
Source of randomness for generating round keys.
Number of mixing rounds; more rounds increase dispersion.
First odd multiplicative constant used in the mixing steps.
Second odd multiplicative constant used in the mixing steps.
Constructors
FullLongPermutation
Parameters
Source of randomness for generating round keys.
Number of mixing rounds; more rounds increase dispersion.
First odd multiplicative constant used in the mixing steps.
Second odd multiplicative constant used in the mixing steps.
Properties
size
Functions
decodeUnchecked
Decodes a previously encoded value without range checks.
encodeUnchecked
Encodes a value without range checks.
iterator
Returns an iterator over encode(i) for indices in [offset, size).
For finite domains, offset is an index in 0..size. For full-domain implementations, semantics are defined by the implementation.
toString
Returns a view of this permutation that operates on range instead of [0, size). Only valid for finite domains where range.count() == size.