// Copyright 2016 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Rice-Golomb decoder for blocklist updates. // Details at: https://en.wikipedia.org/wiki/Golomb_coding #ifndef COMPONENTS_SAFE_BROWSING_CORE_BROWSER_DB_V4_RICE_H_ #define COMPONENTS_SAFE_BROWSING_CORE_BROWSER_DB_V4_RICE_H_ #include <ostream> #include <string> #include <vector> #include "base/gtest_prod_util.h" #include "third_party/protobuf/src/google/protobuf/repeated_field.h" namespace safe_browsing { // Enumerate different failure events while decoding the Rice-encoded string // sent by the server for histogramming purposes. DO NOT CHANGE THE ORDERING OF // THESE VALUES. enum V4DecodeResult { … }; class V4RiceDecoder { … }; std::ostream& operator<<(std::ostream& os, const V4RiceDecoder& rice_decoder); } // namespace safe_browsing #endif // COMPONENTS_SAFE_BROWSING_CORE_BROWSER_DB_V4_RICE_H_