diff options
author | Anton Samokhvalov <pg83@yandex.ru> | 2022-02-10 16:45:15 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:45:15 +0300 |
commit | 72cb13b4aff9bc9cf22e49251bc8fd143f82538f (patch) | |
tree | da2c34829458c7d4e74bdfbdf85dff449e9e7fb8 /util/random/mersenne.h | |
parent | 778e51ba091dc39e7b7fcab2b9cf4dbedfb6f2b5 (diff) | |
download | ydb-72cb13b4aff9bc9cf22e49251bc8fd143f82538f.tar.gz |
Restoring authorship annotation for Anton Samokhvalov <pg83@yandex.ru>. Commit 1 of 2.
Diffstat (limited to 'util/random/mersenne.h')
-rw-r--r-- | util/random/mersenne.h | 72 |
1 files changed, 36 insertions, 36 deletions
diff --git a/util/random/mersenne.h b/util/random/mersenne.h index b2044604ac..464159c81d 100644 --- a/util/random/mersenne.h +++ b/util/random/mersenne.h @@ -1,46 +1,46 @@ #pragma once - -#include "mersenne64.h" -#include "mersenne32.h" -#include "common_ops.h" - -namespace NPrivate { - template <class T> - struct TMersenneTraits; - - template <> - struct TMersenneTraits<ui64> { + +#include "mersenne64.h" +#include "mersenne32.h" +#include "common_ops.h" + +namespace NPrivate { + template <class T> + struct TMersenneTraits; + + template <> + struct TMersenneTraits<ui64> { using TImpl = TMersenne64; - }; - - template <> - struct TMersenneTraits<ui32> { + }; + + template <> + struct TMersenneTraits<ui32> { using TImpl = TMersenne32; - }; -} - + }; +} + class IInputStream; - -template <class T> + +template <class T> class TMersenne: public TCommonRNG<T, TMersenne<T>>, public ::NPrivate::TMersenneTraits<T>::TImpl { -public: +public: using TBase = typename ::NPrivate::TMersenneTraits<T>::TImpl; - + inline TMersenne() noexcept { - } - + } + inline TMersenne(T seed) noexcept - : TBase(seed) - { - } - + : TBase(seed) + { + } + inline TMersenne(IInputStream& pool) - : TBase(pool) - { - } - + : TBase(pool) + { + } + inline TMersenne(const T* keys, size_t len) noexcept - : TBase(keys, len) - { - } -}; + : TBase(keys, len) + { + } +}; |