// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_HASH_MD5_CONSTEXPR_INTERNAL_H_ #define BASE_HASH_MD5_CONSTEXPR_INTERNAL_H_ #include <stdint.h> #include <array> #include "base/check.h" #include "base/check_op.h" #include "base/numerics/safe_conversions.h" namespace base { namespace internal { // The implementation here is based on the pseudocode provided by Wikipedia: // https://en.wikipedia.org/wiki/MD5#Pseudocode struct MD5CE { … }; } // namespace internal // Implementations of the functions exposed in the public header. constexpr uint64_t MD5Hash64Constexpr(std::string_view string) { … } constexpr uint32_t MD5Hash32Constexpr(std::string_view string) { … } } // namespace base #endif // BASE_HASH_MD5_CONSTEXPR_INTERNAL_H_