NFC. Making printOptionValues an API on the parser class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227626 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Bieneman 2015-01-30 22:16:01 +00:00
parent d9b3a8244a
commit 2048ee38ab

View File

@ -178,7 +178,7 @@ public:
nullptr != ConsumeAfterOpt); nullptr != ConsumeAfterOpt);
} }
void updateArgStr(Option *O, const char* NewName) { void updateArgStr(Option *O, const char *NewName) {
if (!OptionsMap.insert(std::make_pair(NewName, O)).second) { if (!OptionsMap.insert(std::make_pair(NewName, O)).second) {
errs() << ProgramName << ": CommandLine Error: Option '" << O->ArgStr errs() << ProgramName << ": CommandLine Error: Option '" << O->ArgStr
<< "' registered more than once!\n"; << "' registered more than once!\n";
@ -186,6 +186,8 @@ public:
} }
OptionsMap.erase(StringRef(O->ArgStr)); OptionsMap.erase(StringRef(O->ArgStr));
} }
void printOptionValues();
}; };
static ManagedStatic<CommandLineParser> GlobalParser; static ManagedStatic<CommandLineParser> GlobalParser;
@ -1725,12 +1727,14 @@ void HelpPrinterWrapper::operator=(bool Value) {
} }
// Print the value of each option. // Print the value of each option.
void cl::PrintOptionValues() { void cl::PrintOptionValues() { GlobalParser->printOptionValues(); }
void CommandLineParser::printOptionValues() {
if (!PrintOptions && !PrintAllOptions) if (!PrintOptions && !PrintAllOptions)
return; return;
SmallVector<std::pair<const char *, Option *>, 128> Opts; SmallVector<std::pair<const char *, Option *>, 128> Opts;
sortOpts(GlobalParser->OptionsMap, Opts, /*ShowHidden*/ true); sortOpts(OptionsMap, Opts, /*ShowHidden*/ true);
// Compute the maximum argument length... // Compute the maximum argument length...
size_t MaxArgLen = 0; size_t MaxArgLen = 0;