#include <EDMPluginDumper.h>
|
void | checkASTDecl (const clang::ClassTemplateDecl *TD, clang::ento::AnalysisManager &mgr, clang::ento::BugReporter &BR) const |
|
Definition at line 21 of file EDMPluginDumper.h.
void clangcms::EDMPluginDumper::checkASTDecl |
( |
const clang::ClassTemplateDecl * |
TD, |
|
|
clang::ento::AnalysisManager & |
mgr, |
|
|
clang::ento::BugReporter & |
BR |
|
) |
| const |
Definition at line 15 of file EDMPluginDumper.cc.
References RefreshWebPage::dname, F(), mergeVDriftHistosByStation::file, alignmentValidation::fname, Exhume::I, NULL, SD, and AlCaHLTBitMon_QueryRunRegistry::string.
17 const clang::SourceManager &SM = BR.getSourceManager();
18 std::string tname = TD->getTemplatedDecl()->getQualifiedNameAsString();
19 if ( tname ==
"edm::WorkerMaker" ) {
20 for (
auto I = TD->spec_begin(), E = TD->spec_end();
I != E; ++
I)
22 for (
unsigned J = 0,
F =
I->getTemplateArgs().size(); J!=
F; ++J)
24 if (
const clang::CXXRecordDecl * RD =
I->getTemplateArgs().get(J).getAsType().getTypePtr()->getAsCXXRecordDecl()) {
25 const char * pPath = std::getenv(
"LOCALRT");
31 std::string ostring =
"edmplugin type '"+ rname +
"'\n";
32 std::ofstream
file(tname.c_str(),std::ios::app);
34 if (
const ClassTemplateSpecializationDecl *
SD = dyn_cast<ClassTemplateSpecializationDecl>(RD)) {
35 for (
unsigned J = 0,
F =
SD->getTemplateArgs().size(); J!=
F; ++J) {
38 const clang::CXXRecordDecl *
D =
SD->getTemplateArgs().get(J).getAsType().getTypePtr()->getAsCXXRecordDecl();
40 std::string ostring =
"edmplugin type '"+rname+
"' template arg '"+ dname +
"'\n";
41 std::ofstream
file(tname.c_str(),std::ios::app);
const std::complex< double > I
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)
DecomposeProduct< arg, typename Div::arg > D
clang::OwningPtr< clang::ento::BugType> clangcms::EDMPluginDumper::BT |
|
mutableprivate |