clang-tools  10.0.0git
DarwinTidyModule.cpp
Go to the documentation of this file.
1 //===--- MiscTidyModule.cpp - 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 #include "../ClangTidy.h"
10 #include "../ClangTidyModule.h"
11 #include "../ClangTidyModuleRegistry.h"
12 #include "AvoidSpinlockCheck.h"
14 
15 namespace clang {
16 namespace tidy {
17 namespace darwin {
18 
19 class DarwinModule : public ClangTidyModule {
20 public:
21  void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
22  CheckFactories.registerCheck<AvoidSpinlockCheck>(
23  "darwin-avoid-spinlock");
25  "darwin-dispatch-once-nonstatic");
26  }
27 };
28 
29 } // namespace darwin
30 
31 // Register the DarwinTidyModule using this statically initialized variable.
32 static ClangTidyModuleRegistry::Add<darwin::DarwinModule>
33  X("darwin-module", "Adds Darwin-specific lint checks.");
34 
35 // This anchor is used to force the linker to link in the generated object file
36 // and thus register the DarwinModule.
37 volatile int DarwinModuleAnchorSource = 0;
38 
39 } // namespace tidy
40 } // namespace clang
Finds variables of type dispatch_once_t that do not have static or global storage duration...
void registerCheck(StringRef CheckName)
Registers the CheckType with the name Name.
Finds usages of OSSpinlock, which is deprecated due to potential livelock problems.
A collection of ClangTidyCheckFactory instances.
A clang-tidy module groups a number of ClangTidyChecks and gives them a prefixed name.
static ClangTidyModuleRegistry::Add< bugprone::BugproneModule > X("bugprone-module", "Adds checks for bugprone code constructs.")
volatile int DarwinModuleAnchorSource
===– Representation.cpp - ClangDoc Representation --------—*- C++ -*-===//
void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override
Implement this function in order to register all CheckFactories belonging to this module...