diff options
Diffstat (limited to 'util/random.h')
-rw-r--r-- | util/random.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/util/random.h b/util/random.h new file mode 100644 index 0000000..6c6e701 --- /dev/null +++ b/util/random.h @@ -0,0 +1,29 @@ +// Copyright 2005-2009 The RE2 Authors. All Rights Reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Modified from Google perftools's tcmalloc_unittest.cc. + +#ifndef RE2_UTIL_RANDOM_H__ +#define RE2_UTIL_RANDOM_H__ + +#include "util/util.h" + +namespace re2 { + +// ACM minimal standard random number generator. (re-entrant.) +class ACMRandom { + public: + ACMRandom(int32 seed) : seed_(seed) {} + int32 Next(); + int32 Uniform(int32); + + void Reset(int32 seed) { seed_ = seed; } + + private: + int32 seed_; +}; + +} // namespace re2 + +#endif // RE2_UTIL_RANDOM_H__ |