1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 5 #ifndef DiagnosticsMatcher_h__ 6 #define DiagnosticsMatcher_h__ 7 8 #include "ChecksIncludes.inc" 9 10 class DiagnosticsMatcher { 11 public: 12 DiagnosticsMatcher(CompilerInstance &CI); 13 makeASTConsumer()14 ASTConsumerPtr makeASTConsumer() { return AstMatcher.newASTConsumer(); } 15 16 private: 17 #define CHECK(cls, name) cls cls##_ { name }; 18 #include "Checks.inc" 19 #undef CHECK 20 MatchFinder AstMatcher; 21 }; 22 23 #endif 24