#ifndef ABSL_FLAGS_INTERNAL_COMMANDLINEFLAG_H_
#define ABSL_FLAGS_INTERNAL_COMMANDLINEFLAG_H_
#include "absl/base/config.h"
#include "absl/base/internal/fast_type_id.h"
namespace absl {
ABSL_NAMESPACE_BEGIN
namespace flags_internal {
using FlagFastTypeId = absl::base_internal::FastTypeIdType;
enum FlagSettingMode {
SET_FLAGS_VALUE,
SET_FLAG_IF_DEFAULT,
SET_FLAGS_DEFAULT
};
enum ValueSource {
kCommandLine,
kProgrammaticChange,
};
class FlagStateInterface {
public:
virtual ~FlagStateInterface();
virtual void Restore() const = 0;
};
} ABSL_NAMESPACE_END
}
#endif