clang  8.0.0svn
Typedefs | Functions | Variables
CheckerRegistry.cpp File Reference
#include "clang/StaticAnalyzer/Core/CheckerRegistry.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LLVM.h"
#include "clang/Frontend/FrontendDiagnostic.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/AnalyzerOptions.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cstddef>
#include <tuple>
Include dependency graph for CheckerRegistry.cpp:

Go to the source code of this file.


using CheckerInfoSet = llvm::SetVector< const CheckerRegistry::CheckerInfo * >


static SmallVector< CheckerOptInfo, 8 > getCheckerOptList (const AnalyzerOptions &opts)
static bool checkerNameLT (const CheckerRegistry::CheckerInfo &a, const CheckerRegistry::CheckerInfo &b)
static bool isInPackage (const CheckerRegistry::CheckerInfo &checker, StringRef packageName)
static void collectCheckers (const CheckerRegistry::CheckerInfoList &checkers, const llvm::StringMap< size_t > &packageSizes, CheckerOptInfo &opt, CheckerInfoSet &collected)
 Collects the checkers for the supplied opt option into collected. More...


static const char PackageSeparator = '.'

Typedef Documentation

◆ CheckerInfoSet

using CheckerInfoSet = llvm::SetVector<const CheckerRegistry::CheckerInfo *>

Definition at line 30 of file CheckerRegistry.cpp.

Function Documentation

◆ checkerNameLT()

static bool checkerNameLT ( const CheckerRegistry::CheckerInfo &  a,
const CheckerRegistry::CheckerInfo &  b 

◆ collectCheckers()

static void collectCheckers ( const CheckerRegistry::CheckerInfoList &  checkers,
const llvm::StringMap< size_t > &  packageSizes,
CheckerOptInfo &  opt,
CheckerInfoSet collected 

Collects the checkers for the supplied opt option into collected.

Definition at line 90 of file CheckerRegistry.cpp.

References clang::ento::CheckerRegistry::addChecker(), checkerNameLT(), getCheckerOptList(), isInPackage(), PackageSeparator, and clang::DiagnosticsEngine::Report().

Referenced by clang::ento::CheckerRegistry::printList().

◆ getCheckerOptList()

static SmallVector<CheckerOptInfo, 8> getCheckerOptList ( const AnalyzerOptions opts)

◆ isInPackage()

static bool isInPackage ( const CheckerRegistry::CheckerInfo &  checker,
StringRef  packageName 

Definition at line 72 of file CheckerRegistry.cpp.

References PackageSeparator.

Referenced by collectCheckers().

Variable Documentation

◆ PackageSeparator

const char PackageSeparator = '.'

Definition at line 28 of file CheckerRegistry.cpp.

Referenced by collectCheckers(), and isInPackage().