Changeset View
Changeset View
Standalone View
Standalone View
clang-tidy/modernize/ExplicitOperatorBoolCheck.h
- This file was added.
//===--- ExplicitOperatorBoolCheck.h - clang-tidy----------------*- C++ -*-===// | |||||
// | |||||
// The LLVM Compiler Infrastructure | |||||
// | |||||
// This file is distributed under the University of Illinois Open Source | |||||
// License. See LICENSE.TXT for details. | |||||
// | |||||
//===----------------------------------------------------------------------===// | |||||
#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_EXPLICIT_OPERATOR_BOOL_H | |||||
#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_EXPLICIT_OPERATOR_BOOL_H | |||||
#include "../ClangTidy.h" | |||||
namespace clang { | |||||
namespace tidy { | |||||
namespace modernize { | |||||
/// This check finds implicit operator bool overloads and inserts the explicit | |||||
/// keyword, which is available since C++11. | |||||
/// | |||||
/// For the user-facing documentation see: | |||||
/// http://clang.llvm.org/extra/clang-tidy/checks/modernize-explicit-operator-bool.html | |||||
class ExplicitOperatorBoolCheck : public ClangTidyCheck { | |||||
public: | |||||
ExplicitOperatorBoolCheck(StringRef Name, ClangTidyContext *Context) | |||||
: ClangTidyCheck(Name, Context) {} | |||||
void registerMatchers(ast_matchers::MatchFinder *Finder) override; | |||||
void check(const ast_matchers::MatchFinder::MatchResult &Result) override; | |||||
}; | |||||
} // namespace modernize | |||||
} // namespace tidy | |||||
} // namespace clang | |||||
#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_EXPLICIT_OPERATOR_BOOL_H |