clang-tools  10.0.0git
UseAfterMoveCheck.h
Go to the documentation of this file.
1 //===--- UseAfterMoveCheck.h - clang-tidy ---------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_BUGPRONE_USEAFTERMOVECHECK_H
10 #define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_BUGPRONE_USEAFTERMOVECHECK_H
11 
12 #include "../ClangTidyCheck.h"
13 
14 namespace clang {
15 namespace tidy {
16 namespace bugprone {
17 
18 /// The check warns if an object is used after it has been moved, without an
19 /// intervening reinitialization.
20 ///
21 /// For details, see the user-facing documentation:
22 /// http://clang.llvm.org/extra/clang-tidy/checks/bugprone-use-after-move.html
24 public:
26  : ClangTidyCheck(Name, Context) {}
27  void registerMatchers(ast_matchers::MatchFinder *Finder) override;
28  void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
29 };
30 
31 } // namespace bugprone
32 } // namespace tidy
33 } // namespace clang
34 
35 #endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_BUGPRONE_USEAFTERMOVECHECK_H
void check(const ast_matchers::MatchFinder::MatchResult &Result) override
ClangTidyChecks that register ASTMatchers should do the actual work in here.
The check warns if an object is used after it has been moved, without an intervening reinitialization...
Base class for all clang-tidy checks.
void registerMatchers(ast_matchers::MatchFinder *Finder) override
Override this to register AST matchers with Finder.
static constexpr llvm::StringLiteral Name
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
Every ClangTidyCheck reports errors through a DiagnosticsEngine provided by this context.
UseAfterMoveCheck(StringRef Name, ClangTidyContext *Context)