File: include-cleaner.rst

package info (click to toggle)
llvm-toolchain-19 1%3A19.1.7-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 1,998,520 kB
  • sloc: cpp: 6,951,680; ansic: 1,486,157; asm: 913,598; python: 232,024; f90: 80,126; objc: 75,281; lisp: 37,276; pascal: 16,990; sh: 10,009; ml: 5,058; perl: 4,724; awk: 3,523; makefile: 3,167; javascript: 2,504; xml: 892; fortran: 664; cs: 573
file content (40 lines) | stat: -rw-r--r-- 1,039 bytes parent folder | download | duplicates (13)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
.. title:: clang-tidy - misc-include-cleaner

misc-include-cleaner
====================

Checks for unused and missing includes. Generates findings only for
the main file of a translation unit.
Findings correspond to https://clangd.llvm.org/design/include-cleaner.

Example:

.. code-block:: c++
   
   // foo.h
   class Foo{};
   // bar.h
   #include "baz.h"
   class Bar{};
   // baz.h
   class Baz{};
   // main.cc
   #include "bar.h" // OK: uses class Bar from bar.h
   #include "foo.h" // warning: unused include "foo.h"
   Bar bar;
   Baz baz; // warning: missing include "baz.h"

Options
-------

.. option:: IgnoreHeaders

   A semicolon-separated list of regexes to disable insertion/removal of header
   files that match this regex as a suffix.  E.g., `foo/.*` disables
   insertion/removal for all headers under the directory `foo`. By default, no 
   headers will be ignored.

.. option:: DeduplicateFindings

   A boolean that controls whether the check should deduplicate findings for the
   same symbol. Defaults to `true`.