File indexing completed on 2024-04-28 05:38:32

0001 /*
0002     SPDX-FileCopyrightText: 2018 Sergio Martins <smartins@kde.org>
0003     SPDX-FileCopyrightText: 2023 Ahmad Samir <a.samirh78@gmail.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #ifndef CLAZY_QT_KEYWORD_EMIT_H
0009 #define CLAZY_QT_KEYWORD_EMIT_H
0010 
0011 #include "checkbase.h"
0012 
0013 #include <clang/Basic/SourceLocation.h>
0014 
0015 #include <string>
0016 
0017 /**
0018  * See README-qt-keyword-emit.md for more info.
0019  */
0020 
0021 class ClazyContext;
0022 namespace clang
0023 {
0024 class MacroInfo;
0025 class Token;
0026 } // namespace clang
0027 
0028 class QtKeywordEmit : public CheckBase
0029 {
0030 public:
0031     explicit QtKeywordEmit(const std::string &name, ClazyContext *context);
0032 
0033 protected:
0034     void VisitMacroExpands(const clang::Token &, const clang::SourceRange &, const clang::MacroInfo *) override;
0035 };
0036 
0037 #endif // CLAZY_QT_KEYWORD_EMIT_H