From 67cc06366cdb20795d21c31f89624d81e97af799 Mon Sep 17 00:00:00 2001 From: Greg Clayton Date: Wed, 22 Aug 2012 17:17:09 +0000 Subject: Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation: - no setting auto completion - very manual and error prone way of getting/setting variables - tons of code duplication - useless instance names for processes, threads Now settings can easily be defined like option values. The new settings makes use of the "OptionValue" classes so we can re-use the option value code that we use to set settings in command options. No more instances, just "does the right thing". llvm-svn: 162366 --- lldb/source/Commands/CommandObjectApropos.cpp | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) (limited to 'lldb/source/Commands/CommandObjectApropos.cpp') diff --git a/lldb/source/Commands/CommandObjectApropos.cpp b/lldb/source/Commands/CommandObjectApropos.cpp index a71c2b6b93a..a8713d03674 100644 --- a/lldb/source/Commands/CommandObjectApropos.cpp +++ b/lldb/source/Commands/CommandObjectApropos.cpp @@ -86,27 +86,22 @@ CommandObjectApropos::DoExecute (Args& args, CommandReturnObject &result) for (size_t i = 0; i < commands_found.GetSize(); ++i) m_interpreter.OutputFormattedHelpText (result.GetOutputStream(), commands_found.GetStringAtIndex(i), - "--", commands_help. - GetStringAtIndex(i), + "--", + commands_help.GetStringAtIndex(i), max_len); } - StreamString settings_search_results; - lldb::UserSettingsControllerSP root = Debugger::GetSettingsController (); - const char *settings_prefix = root->GetLevelName().GetCString(); - - UserSettingsController::SearchAllSettingsDescriptions (m_interpreter, - root, - settings_prefix, - search_word, - settings_search_results); - - if (settings_search_results.GetSize() > 0) + std::vector properties; + const size_t num_properties = m_interpreter.GetDebugger().Apropos(search_word, properties); + if (num_properties) { + const bool dump_qualified_name = true; result.AppendMessageWithFormat ("\nThe following settings variables may relate to '%s': \n\n", search_word); - result.AppendMessageWithFormat ("%s", settings_search_results.GetData()); + for (size_t i=0; iDumpDescription (m_interpreter, result.GetOutputStream(), 0, dump_qualified_name); + } result.SetStatus (eReturnStatusSuccessFinishNoResult); -- cgit v1.2.3