namespace tsl::rh::detail

Overview

namespace detail {

// global variables

static constexpr const std::array<std::size_t, TSL_RH_NB_PRIMES> PRIMES;
static constexpr const std::array<std::size_t(*)(std::size_t), TSL_RH_NB_PRIMES> MOD_PRIME = {{&mod<0>,&mod<1>,&mod<2>,&mod<3>,&mod<4>,&mod<5>,&mod<6>,&mod<7>,&mod<8>,&mod<9>,&mod<10>,&mod<11>,&mod<12>,&mod<13>,&mod<14>,&mod<15>,&mod<16>,&mod<17>,&mod<18>,&mod<19>,&mod<20>,&mod<21>,&mod<22>,&mod<23>,&mod<24>,&mod<25>,&mod<26>,&mod<27>,&mod<28>,&mod<29>,&mod<30>,&mod<31>,&mod<32>,&mod<33>,&mod<34>,&mod<35>,&mod<36>,&mod<37>,&mod<38>,&mod<39>,&mod<40>,&mod<41>,&mod<42>,&mod<43>,&mod<44>,&mod<45>,&mod<46>,&mod<47>,&mod<48>,&mod<49>,&mod<50>,      }};

// global functions

template <unsigned int IPrime>
static constexpr std::size_t mod(std::size_t hash);

} // namespace detail