This patch adds new SBDebugger::GetSetting() API which
enables client to access settings as SBStructuredData.
Implementation wise, a new ToJSON() virtual function is added to OptionValue
class so that each concrete child class can override and provides its
own JSON representation. This patch aims to define the APIs and implement
a common set of OptionValue child classes, leaving the remaining for
future patches.
This patch is used later by auto deduce source map from source line breakpoint
feature for testing generated source map entries.
remove this and document the function below such that "setting" can be NULL or empty for to get all settings. Maybe also document that anything that you can type as an argument for "settings show" should work here. See the output of "settings show target" for an example.
Examples that should work here are:
lldb::SBStructuredData settings = debugger.GetSetting(nullptr); // Get all settings lldb::SBStructuredData settings = debugger.GetSetting(""); // Get all settings lldb::SBStructuredData settings = debugger.GetSetting("target.arg0"); // Get 1 specific setting lldb::SBStructuredData settings = debugger.GetSetting("target.arg0 target.language"); // Get 2 specific settings lldb::SBStructuredData settings = debugger.GetSetting("target"); // Get all target specific settingsSo basically anything you can type into "settings show" should work here.