clang-tools  3.8.0
HeaderGuardCheck.h
Go to the documentation of this file.
1 //===--- HeaderGuardCheck.h - clang-tidy ------------------------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 
10 #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVM_HEADER_GUARD_CHECK_H
11 #define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVM_HEADER_GUARD_CHECK_H
12 
13 #include "../utils/HeaderGuard.h"
14 
15 namespace clang {
16 namespace tidy {
17 namespace llvm {
18 
19 /// Finds and fixes header guards that do not adhere to LLVM style.
21 public:
23  : HeaderGuardCheck(Name, Context) {}
24  bool shouldSuggestEndifComment(StringRef Filename) override { return false; }
25  bool shouldFixHeaderGuard(StringRef Filename) override;
26  std::string getHeaderGuard(StringRef Filename, StringRef OldGuard) override;
27 };
28 
29 } // namespace llvm
30 } // namespace tidy
31 } // namespace clang
32 
33 #endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVM_HEADER_GUARD_CHECK_H
StringHandle Name
LLVMHeaderGuardCheck(StringRef Name, ClangTidyContext *Context)
std::string getHeaderGuard(StringRef Filename, StringRef OldGuard) override
Get the canonical header guard for a file.
std::string Filename
Filename as a string.
bool shouldSuggestEndifComment(StringRef Filename) override
Returns true if the checker should suggest inserting a trailing comment on the #endif of the header g...
Every ClangTidyCheck reports errors through a DiagnosticsEngine provided by this context.
Finds and fixes header guards.
Definition: HeaderGuard.h:19
Finds and fixes header guards that do not adhere to LLVM style.
bool shouldFixHeaderGuard(StringRef Filename) override
Returns true if the checker should suggest changing an existing header guard to the string returned b...