clang-tools  7.0.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.
20 /// For the user-facing documentation see:
21 /// http://clang.llvm.org/extra/clang-tidy/checks/llvm-header-guard.html
22 /// The check supports these options:
23 /// - `HeaderFileExtensions`: a comma-separated list of filename extensions of
24 /// header files (The filename extension should not contain "." prefix).
25 /// ",h,hh,hpp,hxx" by default.
26 /// For extension-less header files, using an empty string or leaving an
27 /// empty string between "," if there are other filename extensions.
29 public:
30  LLVMHeaderGuardCheck(StringRef Name, ClangTidyContext *Context);
31 
32  bool shouldSuggestEndifComment(StringRef Filename) override { return false; }
33  std::string getHeaderGuard(StringRef Filename, StringRef OldGuard) override;
34 };
35 
36 } // namespace llvm
37 } // namespace tidy
38 } // namespace clang
39 
40 #endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_LLVM_HEADER_GUARD_CHECK_H
llvm::StringRef Name
Some operations such as code completion produce a set of candidates.
Finds and fixes header guards.
Definition: HeaderGuard.h:27
LLVMHeaderGuardCheck(StringRef Name, ClangTidyContext *Context)
std::string getHeaderGuard(StringRef Filename, StringRef OldGuard) override
Gets the canonical header guard for a file.
std::string Filename
Filename as a string.
bool shouldSuggestEndifComment(StringRef Filename) override
Returns true if the check should suggest inserting a trailing comment on the #endif of the header gua...
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Every ClangTidyCheck reports errors through a DiagnosticsEngine provided by this context.
Finds and fixes header guards that do not adhere to LLVM style.