18 for (
const auto &Entry : TUSummaryExtractorRegistry::entries())
24std::unique_ptr<ASTConsumer>
27 for (
const auto &Entry : TUSummaryExtractorRegistry::entries())
29 return Entry.instantiate(Builder);
30 assert(
false &&
"Unknown SummaryExtractor name");
35 OS <<
"OVERVIEW: Available SSAF summary extractors:\n\n";
36 for (
const auto &Entry : TUSummaryExtractorRegistry::entries())
37 OS <<
" " << Entry.getName() <<
" - " << Entry.getDesc() <<
"\n";
Uniquely identifies an analysis summary.
std::unique_ptr< ASTConsumer > makeTUSummaryExtractor(llvm::StringRef SummaryName, TUSummaryBuilder &Builder)
Try to instantiate a TUSummaryExtractor with a given name.
llvm::Registry< TUSummaryExtractor, TUSummaryBuilder & > TUSummaryExtractorRegistry
void printAvailableTUSummaryExtractors(llvm::raw_ostream &OS)
Print the list of available TUSummaryExtractors.
bool isTUSummaryExtractorRegistered(llvm::StringRef SummaryName)
Check if a TUSummaryExtractor was registered with a given name.
The JSON file list parser is used to communicate input to InstallAPI.
Diagnostic wrappers for TextAPI types for error reporting.