// Copyright 2020 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef NET_COOKIES_COOKIE_INCLUSION_STATUS_H_ #define NET_COOKIES_COOKIE_INCLUSION_STATUS_H_ #include <stdint.h> #include <bitset> #include <cstdint> #include <ostream> #include <string> #include <vector> #include "net/base/net_export.h" class GURL; namespace net { // This class represents if a cookie was included or excluded in a cookie get or // set operation, and if excluded why. It holds a vector of reasons for // exclusion, where cookie inclusion is represented by the absence of any // exclusion reasons. Also marks whether a cookie should be warned about, e.g. // for deprecation or intervention reasons. // TODO(crbug.com/40219875): Improve serialization validation comments. class NET_EXPORT CookieInclusionStatus { … }; NET_EXPORT inline std::ostream& operator<<(std::ostream& os, const CookieInclusionStatus status) { … } // Provided to allow gtest to create more helpful error messages, instead of // printing hex. inline void PrintTo(const CookieInclusionStatus& cis, std::ostream* os) { … } } // namespace net #endif // NET_COOKIES_COOKIE_INCLUSION_STATUS_H_