// Copyright 2015 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_FLAGS_UI_FLAGS_STATE_H_ #define COMPONENTS_FLAGS_UI_FLAGS_STATE_H_ #include <stddef.h> #include <map> #include <set> #include <string> #include <vector> #include "base/command_line.h" #include "base/containers/span.h" #include "base/feature_list.h" #include "base/functional/callback.h" #include "base/memory/raw_ptr.h" #include "base/memory/raw_span.h" #include "base/values.h" namespace flags_ui { // Internal functionality exposed for tests. namespace internal { // The trial group selected when feature variation parameters are registered via // FlagsState::RegisterFeatureVariationParameters(). extern const char kTrialGroupAboutFlags[]; } // namespace internal struct FeatureEntry; class FlagsStorage; // Enumeration of flag filters. These values don't persist and can be // renumbered. enum { … }; // A flag controlling the behavior of the |ConvertFlagsToSwitches| function - // whether it should add the sentinel switches around flags. enum SentinelsMode { … }; // Differentiate between generic flags available on a per session base and flags // that influence the whole machine and can be said by the admin only. This flag // is relevant for ChromeOS for now only and dictates whether entries marked // with the |kOsCrOSOwnerOnly| label should be enabled in the UI or not. enum FlagAccess { … }; // Stores and encapsulates the little state that about:flags has. class FlagsState { … }; } // namespace flags_ui #endif // COMPONENTS_FLAGS_UI_FLAGS_STATE_H_