<commit_before>#pragma once

#include <core/types.h>
#include <core/platform.h>

namespace core
{
#if CORE_PLATFORM_WIN
    //code from: http://seanmiddleditch.com/journal/2011/05/compile-time-string-hashing-in-c0x/
    // FNV-1a constants
    static const uint64_t fnv1a_basis = 14695981039346656037ULL;
    static const uint64_t fnv1a_prime = 1099511628211ULL;

    // compile-time hash helper function
    inline uint64_t hash_one_fnv1a(char c, const char* remain, uint64_t value)
    {
        return c == 0 ? value : hash_one_fnv1a(remain[0], remain + 1, (value ^ c) * fnv1a_prime);
    }

    // compile-time hash
    inline uint64_t hash_fnv1a(const char* str)<commit_msg>bugfix<commit_after>#pragma once

#include <core/types.h>
#include <core/platform.h>

namespace core
{
#ifdef CORE_PLATFORM_WIN
    //code from: http://seanmiddleditch.com/journal/2011/05/compile-time-string-hashing-in-c0x/
    // FNV-1a constants
    static const uint64_t fnv1a_basis = 14695981039346656037ULL;
    static const uint64_t fnv1a_prime = 1099511628211ULL;

    // compile-time hash helper function
    inline uint64_t hash_one_fnv1a(char c, const char* remain, uint64_t value)
    {
        return c == 0 ? value : hash_one_fnv1a(remain[0], remain + 1, (value ^ c) * fnv1a_prime);
    }

    // compile-time hash
    inline uint64_t hash_fnv1a(const char* str)
{'fraction_non_alphanumeric': 0.10635155096011817, 'fraction_numerical': 0.08862629246676514, 'mean_word_length': 3.5622895622895623, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7459191', 'n_tokens_mistral': 582, 'n_tokens_neox': 510, 'n_words': 109}