aboutsummaryrefslogtreecommitdiff
path: root/include/lldb/Core/UserSettingsController.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Core/UserSettingsController.h')
-rw-r--r--include/lldb/Core/UserSettingsController.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/include/lldb/Core/UserSettingsController.h b/include/lldb/Core/UserSettingsController.h
index 7e72b89ad8e6..6c395c81c37b 100644
--- a/include/lldb/Core/UserSettingsController.h
+++ b/include/lldb/Core/UserSettingsController.h
@@ -24,7 +24,6 @@
#include "lldb/Core/StringList.h"
#include "lldb/Core/Stream.h"
#include "lldb/Core/StreamString.h"
-#include "lldb/Host/Mutex.h"
#include "lldb/Interpreter/OptionValue.h"
namespace lldb_private {
@@ -89,6 +88,20 @@ public:
lldb::OptionValuePropertiesSP
GetSubProperty (const ExecutionContext *exe_ctx,
const ConstString &name);
+
+ // We sometimes need to introduce a setting to enable experimental features,
+ // but then we don't want the setting for these to cause errors when the setting
+ // goes away. Add a sub-topic of the settings using this experimental name, and
+ // two things will happen. One is that settings that don't find the name will not
+ // be treated as errors. Also, if you decide to keep the settings just move them into
+ // the containing properties, and we will auto-forward the experimental settings to the
+ // real one.
+ static const char *
+ GetExperimentalSettingsName();
+
+ static bool
+ IsSettingExperimental(const char *setting);
+
protected:
lldb::OptionValuePropertiesSP m_collection_sp;
};