gpt4 book ai didi

clang-tidy - 从 clang-tidy 中排除特定标题

转载 作者:行者123 更新时间:2023-12-04 04:30:59 33 4
gpt4 key购买 nike

我有几个项目,我想解析很多标题,但有几个标题我不想用 clang-tidy 解析

我的文件夹层次结构如下

一种\

    B\

C\
coco.h
D\
E\

我的项目在 C 和 D 文件夹中,我希望它们解析 B 下的所有标题,所以我的解决方案是
HeaderFilterRegex: 'B/*'
我想包含很多标题,所以我不能一一命名。

但是在 C 和 D 文件夹中有几个我想排除的标题(例如 coco.h)。

我尝试将 NO_LINT 放在包含 coco.h 的 cpp 中,但没有帮助,

我怎样才能做到这一点?

谢谢

最佳答案

我找到了一个适合我的目的的解决方法(我有一个有限的文件列表,我想过滤掉它们并且它们具有唯一的名称)

我使用行过滤器并添加我想过滤掉的所有文件。在行范围中,我放了一条不存在的行,这样它就会过滤掉文件。在行过滤器的末尾,我添加了 .h 和 .cpp,因此它将过滤其余文件。

例如让我说我只想过滤掉 coco.cpp

-line-filter=[{"name":"coco.cpp","lines":[[9999999,9999999]]},{"name":".h"},{"name":".cpp"}]

需要注意的一件事,以及我认为它不起作用的原因如下:行过滤器仅在分析后才有效,而 header 过滤器仅适用于包含。

在 coco.cpp 中,我有一行(调用模板)导致警告,但警告显示在应该由 header-filter 过滤掉的标题上。

它没有被过滤掉,因为警告是由 cpp 引起的,但实际警告显示在标题上,因此在我将这个特定标题也放入行过滤器之前,行过滤器没有帮助。

不是很直观。

关于clang-tidy - 从 clang-tidy 中排除特定标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56124739/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com