[clang-tools-extra] r255770 - [clang-tidy] Add namespace support to add_new_check.py
Alexander Kornienko via cfe-commits
cfe-commits at lists.llvm.org
Wed Dec 16 07:05:27 PST 2015
Author: alexfh
Date: Wed Dec 16 09:05:27 2015
New Revision: 255770
URL: http://llvm.org/viewvc/llvm-project?rev=255770&view=rev
Log:
[clang-tidy] Add namespace support to add_new_check.py
Summary: Without namespace you can not create checks with same name in different modules
Reviewers: alexfh
Subscribers: cfe-commits
Patch by Cong Liu!
Differential Revision: http://reviews.llvm.org/D15571
Modified:
clang-tools-extra/trunk/clang-tidy/add_new_check.py
Modified: clang-tools-extra/trunk/clang-tidy/add_new_check.py
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/add_new_check.py?rev=255770&r1=255769&r2=255770&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-tidy/add_new_check.py (original)
+++ clang-tools-extra/trunk/clang-tidy/add_new_check.py Wed Dec 16 09:05:27 2015
@@ -73,6 +73,7 @@ def write_header(module_path, module, ch
namespace clang {
namespace tidy {
+namespace %(module)s {
/// FIXME: Write a short description.
///
@@ -86,6 +87,7 @@ public:
void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
};
+} // namespace %(module)s
} // namespace tidy
} // namespace clang
@@ -93,11 +95,12 @@ public:
""" % {'header_guard': header_guard,
'check_name': check_name_camel,
- 'check_name_dashes': check_name_dashes})
+ 'check_name_dashes': check_name_dashes,
+ 'module': module})
# Adds the implementation of the new check.
-def write_implementation(module_path, check_name_camel):
+def write_implementation(module_path, module, check_name_camel):
filename = os.path.join(module_path, check_name_camel) + '.cpp'
print('Creating %s...' % filename)
with open(filename, 'wb') as f:
@@ -123,6 +126,7 @@ using namespace clang::ast_matchers;
namespace clang {
namespace tidy {
+namespace %(module)s {
void %(check_name)s::registerMatchers(MatchFinder *Finder) {
// FIXME: Add matchers.
@@ -139,10 +143,12 @@ void %(check_name)s::check(const MatchFi
<< FixItHint::CreateInsertion(MatchedDecl->getLocation(), "awesome_");
}
+} // namespace %(module)s
} // namespace tidy
} // namespace clang
-""" % {'check_name': check_name_camel})
+""" % {'check_name': check_name_camel,
+ 'module': module})
# Modifies the module to include the new check.
@@ -261,7 +267,7 @@ def main():
if not adapt_cmake(module_path, check_name_camel):
return
write_header(module_path, module, check_name, check_name_camel)
- write_implementation(module_path, check_name_camel)
+ write_implementation(module_path, module, check_name_camel)
adapt_module(module_path, module, check_name, check_name_camel)
write_test(module_path, module, check_name)
write_docs(module_path, module, check_name)
More information about the cfe-commits
mailing list