【问题标题】:Is it possible to write new clang-tidy modernize rules?是否可以编写新的整洁的现代化规则?
【发布时间】:2019-09-19 00:10:29
【问题描述】:

特别是,我正在使用 Qt;我们的代码库仍然充斥着旧的foreach 宏,例如foreach (T foo, bar) { ... }。我想把它变成for (T foo : bar) { ... }。有没有办法编写一个整洁的规则来做到这一点?

【问题讨论】:

    标签: c++ qt clang-tidy


    【解决方案1】:

    是的,这绝对是可能的。 Clang-tidy 是开源的,所以没有什么能阻止您修改代码或编写自己的检查。

    modernize-loop-convert 检查与您的用例非常相似,因此它可能是一个好的开始。 (source)

    Clang-tidy 甚至还有官方documentation on writing new checks

    【讨论】:

    • 谢谢。我搜索了一堆,但没有找到。我曾希望(或许也预料到?)它可以通过配置文件来完成——比如 AST 上的正则表达式——所以这种假设可能会在搜索时把我引向错误的方向。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    • 1970-01-01
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多