M5Utility 0.0.2 git rev:5c1a751
Loading...
Searching...
No Matches
murmurhash3.hpp File Reference

MurmurHash3. More...

#include <cstdint>
#include <cstddef>
#include <cstring>
#include <type_traits>
#include "./stl/endianness.hpp"

Go to the source code of this file.

Namespaces

namespace  m5
 Top level namespace of M5.
 
namespace  mmh3
 For Murmurhash3.
 

Functions

constexpr uint32_t m5::utility::mmh3::calculate (const char *str, const size_t len)
 MurmurHash3 by compile-time calculation.
 
constexpr uint32_t m5::utility::mmh3::operator""_mmh3 (const char *str, const size_t len)
 User-defined literals "_mmh3".
 
uint32_t m5::utility::mmh3::calculate (const char *str)
 Calculate MurmurHash3 from string.
 

Detailed Description

MurmurHash3.

MurmurHash (public domain) by Austin Appleby in 2008

See also
https://en.wikipedia.org/wiki/MurmurHash

Function Documentation

◆ calculate() [1/2]

uint32_t m5::utility::mmh3::calculate ( const char * str)

Calculate MurmurHash3 from string.

Parameters
strString
Returns
32bit MurmurHash3 from input string

◆ calculate() [2/2]

uint32_t m5::utility::mmh3::calculate ( const char * str,
const size_t len )
constexpr

MurmurHash3 by compile-time calculation.

Parameters
strString
lenLength of string
Returns
32bit MurmurHash3 from input string

◆ operator""_mmh3()

uint32_t m5::utility::mmh3::operator""_mmh3 ( const char * str,
const size_t len )
constexpr

User-defined literals "_mmh3".

Returns
32bit MurmurHash3 from input string
using namespace m5::unit::mmh3;
uint32_t h = "M5 Stack"_mmh3;