pub fn from_seed(seed: [u32; 4]) -> Self {
        let optional_seed = &mut *unwrap!(SEED.lock());
        if let Some(current_seed) = *optional_seed {
            if current_seed != seed {
                panic!(
                    "\nThe static seed has already been initialised to a different value via \
                     a call to `SeededRng::new()`\nor `SeededRng::from_seed(...)`.  This \
                     could be due to setting a hard-coded value for the seed in a\nsingle \
                     test case, but running the whole test suite.  If so, try running just \
                     the single test case.\n"
                );
            }
        } else {
            *optional_seed = Some(seed);
        }

        SeededRng(XorShiftRng::from_seed(seed))
    }
/// Construct a new `SeededRng` using `seed`.
///
/// If the underlying static seed has already been initialised to a value different to `seed`,
/// then this function will panic.
Construct a new `SeededRng` using `seed`.
If the underlying static seed has already been initialised to a value different to `seed`,
then this function will panic.
Construct a new ` SeededRng ` using ` seed ` . If the underlying static seed has already been initialised to a value different to ` seed ` then this function will panic .
pub fn from_seed(seed: [u32; 4]) -> Self {
        let optional_seed = &mut *unwrap!(SEED.lock());
        if let Some(current_seed) = *optional_seed {
            if current_seed != seed {
                panic!(
                    "\nThe static seed has already been initialised to a different value via \
                     a call to `SeededRng::new()`\nor `SeededRng::from_seed(...)`.  This \
                     could be due to setting a hard-coded value for the seed in a\nsingle \
                     test case, but running the whole test suite.  If so, try running just \
                     the single test case.\n"
                );
            }
        } else {
            *optional_seed = Some(seed);
        }
        SeededRng(XorShiftRng::from_seed(seed))
    }
pub fn from_seed ( seed : [ u32 ; 4 ] ) -> Self { let optional_seed = & mut * unwrap ! ( SEED lock ( ) ) ; if let Some ( current_seed ) = * optional_seed { if current_seed != seed { panic ! ( " \n \
 \n \
 \n \
 \
 \n " ) ; } } else { * optional_seed = Some ( seed ) ; } SeededRng ( XorShiftRng :: from_seed ( seed ) ) }
Construct a new `SeededRng` using `seed`.
Construct a new ` SeededRng ` using ` seed ` .
seed
[u32; 4]
seed
[u32; 4]