AMFNV1a  201909
String localization library
Static Public Member Functions | List of all members
AMCore::AMCEFNV1aAlgorithm Class Reference

Constant expression implementation of FNV1a Algorithm. More...

#include <AMCEFNV1a.h>

Static Public Member Functions

static constexpr std::uint64_t fnv1a64 (const char *input)
 64bit variant of FNV1a Algorithm More...
 
static constexpr std::uint32_t fnv1a32 (const char *input)
 32bit variant of FNV1a Algorithm More...
 

Detailed Description

Constant expression implementation of FNV1a Algorithm.

Example:

#include <AMCore/AMCEFNV1a.h>
#include <iostream>
using namespace AMCore;
using namespace std;
int main() {
cout<<"Enter password (color of blood): ";
char pass[1024];
cin>>pass;
uint64_t hash = AMFNV1aAlgorithm::fnv1a64(pass);
switch (hash)
{
case AMCEFNV1aAlgorithm::fnv1a64("blue"): cout<<"Fail"<<endl;break;
case AMCEFNV1aAlgorithm::fnv1a64("green"): cout<<"Fail"<<endl;break;
case AMCEFNV1aAlgorithm::fnv1a64("red"): cout<<"Hooray!"<<endl;break;
case AMCEFNV1aAlgorithm::fnv1a64("yellow"): cout<<"Fail"<<endl;break;
default: cout<<"Fail"<<endl;
}
return 0;
}

Member Function Documentation

◆ fnv1a32()

static constexpr std::uint32_t AMCore::AMCEFNV1aAlgorithm::fnv1a32 ( const char *  input)
inlinestaticconstexpr

32bit variant of FNV1a Algorithm

Parameters
inputany null-terminated string
Returns
32bit hash

◆ fnv1a64()

static constexpr std::uint64_t AMCore::AMCEFNV1aAlgorithm::fnv1a64 ( const char *  input)
inlinestaticconstexpr

64bit variant of FNV1a Algorithm

Parameters
inputany null-terminated string
Returns
64bit hash

The documentation for this class was generated from the following file:
AMCore::AMCEFNV1aAlgorithm::fnv1a64
static constexpr std::uint64_t fnv1a64(const char *input)
64bit variant of FNV1a Algorithm
Definition: AMCEFNV1a.h:62