blob: 5b0d001badff21ee09d68eb63d9f269ceb675540 [file] [log] [blame]
Benjamin Kramer2252cbf2014-07-16 14:16:56 +00001//===--- UsingNamespaceDirectiveCheck.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_GOOGLE_USING_NAMESPACE_CHECK_H
11#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_GOOGLE_USING_NAMESPACE_CHECK_H
12
13#include "../ClangTidy.h"
14
15namespace clang {
16namespace tidy {
17namespace build {
18
19/// \brief Finds using namespace directives.
20///
Benjamin Kramer1f142622014-07-17 08:23:24 +000021/// http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Namespaces#Namespaces
Benjamin Kramer2252cbf2014-07-16 14:16:56 +000022/// Corresponding cpplint.py check name: 'build/namespaces'.
23class UsingNamespaceDirectiveCheck : public ClangTidyCheck {
24public:
Alexander Kornienko6e0cbc82014-09-12 08:53:36 +000025 UsingNamespaceDirectiveCheck(StringRef Name, ClangTidyContext *Context)
26 : ClangTidyCheck(Name, Context) {}
Benjamin Kramer2252cbf2014-07-16 14:16:56 +000027 void registerMatchers(ast_matchers::MatchFinder *Finder) override;
28 void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
29};
30
31} // namespace build
32} // namespace tidy
33} // namespace clang
34
35#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_GOOGLE_USING_NAMESPACE_CHECK_H