#include "RedundantInlineSpecifierCheck.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Decl.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/ExprCXX.h"
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/SourceLocation.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Lex/Token.h"
#include "../utils/LexerUtils.h"
usingnamespaceclang::ast_matchers;
namespace clang::tidy::readability {
namespace {
AST_POLYMORPHIC_MATCHER(isInlineSpecified,
AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl,
VarDecl)) { … }
AST_POLYMORPHIC_MATCHER_P(isInternalLinkage,
AST_POLYMORPHIC_SUPPORTED_TYPES(FunctionDecl,
VarDecl),
bool, strictMode) { … }
}
static SourceLocation getInlineTokenLocation(SourceRange RangeLocation,
const SourceManager &Sources,
const LangOptions &LangOpts) { … }
void RedundantInlineSpecifierCheck::registerMatchers(MatchFinder *Finder) { … }
template <typename T>
void RedundantInlineSpecifierCheck::handleMatchedDecl(
const T *MatchedDecl, const SourceManager &Sources,
const MatchFinder::MatchResult &Result, StringRef Message) { … }
void RedundantInlineSpecifierCheck::check(
const MatchFinder::MatchResult &Result) { … }
}