simple-squiggle

A restricted subset of Squiggle
Log | Files | Refs | README

seededRNG.js (532B)


      1 import seedrandom from 'seedrandom';
      2 var singletonRandom = /* #__PURE__ */seedrandom(Date.now());
      3 export function createRng(randomSeed) {
      4   var random; // create a new random generator with given seed
      5 
      6   function setSeed(seed) {
      7     random = seed === null ? singletonRandom : seedrandom(String(seed));
      8   } // initialize a seeded pseudo random number generator with config's random seed
      9 
     10 
     11   setSeed(randomSeed); // wrapper function so the rng can be updated via generator
     12 
     13   function rng() {
     14     return random();
     15   }
     16 
     17   return rng;
     18 }