clang-tools 18.0.0git
PassByValueCheck.h
Go to the documentation of this file.
1//===--- PassByValueCheck.h - clang-tidy-------------------------*- C++ -*-===//
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_MODERNIZE_PASS_BY_VALUE_H
10#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_PASS_BY_VALUE_H
11
12#include "../ClangTidyCheck.h"
13#include "../utils/IncludeInserter.h"
14
15#include <memory>
16
17namespace clang::tidy::modernize {
18
20public:
21 PassByValueCheck(StringRef Name, ClangTidyContext *Context);
22 bool isLanguageVersionSupported(const LangOptions &LangOpts) const override {
23 return LangOpts.CPlusPlus;
24 }
25 void storeOptions(ClangTidyOptions::OptionMap &Opts) override;
26 void registerPPCallbacks(const SourceManager &SM, Preprocessor *PP,
27 Preprocessor *ModuleExpanderPP) override;
28 void registerMatchers(ast_matchers::MatchFinder *Finder) override;
29 void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
30
31private:
33 const bool ValuesOnly;
34};
35
36} // namespace clang::tidy::modernize
37
38#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_MODERNIZE_PASS_BY_VALUE_H
llvm::StringRef Name
Base class for all clang-tidy checks.
Every ClangTidyCheck reports errors through a DiagnosticsEngine provided by this context.
bool isLanguageVersionSupported(const LangOptions &LangOpts) const override
Override this to disable registering matchers and PP callbacks if an invalid language version is bein...
void registerMatchers(ast_matchers::MatchFinder *Finder) override
Override this to register AST matchers with Finder.
void check(const ast_matchers::MatchFinder::MatchResult &Result) override
ClangTidyChecks that register ASTMatchers should do the actual work in here.
void registerPPCallbacks(const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) override
Override this to register PPCallbacks in the preprocessor.
void storeOptions(ClangTidyOptions::OptionMap &Opts) override
Should store all options supported by this check with their current values or default values for opti...
Produces fixes to insert specified includes to source files, if not yet present.
llvm::StringMap< ClangTidyValue > OptionMap