#include "components/content_settings/core/browser/content_settings_registry.h"
#include <memory>
#include <utility>
#include "base/containers/contains.h"
#include "base/feature_list.h"
#include "base/values.h"
#include "build/blink_buildflags.h"
#include "build/build_config.h"
#include "components/content_settings/core/browser/content_settings_utils.h"
#include "components/content_settings/core/browser/website_settings_registry.h"
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/features.h"
namespace content_settings {
namespace {
base::LazyInstance<ContentSettingsRegistry>::DestructorAtExit
g_content_settings_registry_instance = …;
}
ContentSettingsRegistry* ContentSettingsRegistry::GetInstance() { … }
ContentSettingsRegistry::ContentSettingsRegistry()
: … { … }
ContentSettingsRegistry::ContentSettingsRegistry(
WebsiteSettingsRegistry* website_settings_registry)
: … { … }
void ContentSettingsRegistry::ResetForTest() { … }
ContentSettingsRegistry::~ContentSettingsRegistry() = default;
const ContentSettingsInfo* ContentSettingsRegistry::Get(
ContentSettingsType type) const { … }
ContentSettingsRegistry::const_iterator ContentSettingsRegistry::begin() const { … }
ContentSettingsRegistry::const_iterator ContentSettingsRegistry::end() const { … }
void ContentSettingsRegistry::Init() { … }
void ContentSettingsRegistry::Register(
ContentSettingsType type,
const std::string& name,
ContentSetting initial_default_value,
WebsiteSettingsInfo::SyncStatus sync_status,
const std::vector<std::string>& allowlisted_primary_schemes,
const std::set<ContentSetting>& valid_settings,
WebsiteSettingsInfo::ScopingType scoping_type,
Platforms platforms,
ContentSettingsInfo::IncognitoBehavior incognito_behavior,
ContentSettingsInfo::OriginRestriction origin_restriction) { … }
}