К сожалению, прямого способа сделать это нет, clang-tidy поддерживает только //NOLINT
и //NOLINTNEXTLINE
.
Я не знаю, насколько у вас есть контроль над генерацией кода ... выможет сгенерировать его в одну строку, что может вам сильно помочь, так как c ++ не заботится о пробелах.
Грубое, но эффективное решение - использовать инструмент для работы с текстом, такой как sed:
$ sed -i -re '/^\/\/BEGIN_NOLINT/,/^\/\/END_NOLINT/{s/$/\/\/NOLINT/}' *.cpp
Это добавит //NOLINT
в конце каждой строки между //BEGIN_NOLINT
и //END_NOLINT
комментариями (которые могут быть сгенерированы).
Вы также можете запустить clang-tidy с параметром
-line-filter='[{"name":"test.cpp","lines":[[1,10],[12,100]]}]'
В этом примере строка 11 будет пропущена.Однако это трудно поддерживать, так как вам нужно обновлять фильтр каждый раз, когда вы добавляете / удаляете строки в файле.Возможно, было бы неплохо сгенерировать код в отдельные файлы, если это возможно.