// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CONTENT_PUBLIC_COMMON_PSEUDONYMIZATION_UTIL_H_ #define CONTENT_PUBLIC_COMMON_PSEUDONYMIZATION_UTIL_H_ #include <string_view> #include "content/common/content_export.h" #include "stdint.h" // Forward-declarations of classes approved for using the PseudonymizationUtil. // // The declarations below might violate to some extent the layering (forcing us // to name classes declared in higher-layers, above the //content layer). This // is okay, because: // 1. These are only forward-declarations // 2. The benefit of the forward-declarations (mechanically forcing privacy // review for new users of PseudonymizationUtil) seems to outweigh the // layering concerns. // 3. There is a precedent for such layering-violating-friends-usage in // base::ScopedAllowBlocking. namespace extensions { class ExtensionIdForTracing; } // namespace extensions namespace content { class CONTENT_EXPORT PseudonymizationUtil { … }; } // namespace content #endif // CONTENT_PUBLIC_COMMON_PSEUDONYMIZATION_UTIL_H_