#pragma once #include <cstdlib> #include <string> #include "utils/platform.hpp" #include "fnv32.hpp" #include "fnv64.hpp" // fnv1a is recommended so use it as a default implementation. also use the // platform specific version of the function namespace { #ifdef MEMGRAPH64 template <class T> uint64_t fnv(const T& data) { return fnv1a64<T>(data); } #elif template <class T> uint32_t fnv(const T& data) { return fnv1a32<T>(data); } #endif }