================ @@ -0,0 +1,92 @@ +.. title:: clang-tidy - llvm-header-guard + +misc-header-guard +================= + +Finds and fixes header guards that do not conform to the configured style +options from this check. + +All following examples consider header file +``/path/to/include/component/header.hpp`` + +By default, the check ensures following header guard: + +.. code-block:: c++ + + #ifndef COMPONENT_HEADER_HPP + #define COMPONENT_HEADER_HPP + ... + # endif + +Options +------- + +.. option:: HeaderDirs + + A semicolon-separated list of one or more header directory names. Header + directories may contain `/` as path separator. The list is searched for the + first matching string. The header guard will start from this path + component. Default value is `include`. + + E.g. :option:`HeaderDirs` is set to one of the following values: + + - `component` + - `include/component` + - `component;include` + + It results in the same following header guard: + + .. code-block:: c++ + + #ifndef HEADER_HPP + #define HEADER_HPP + ... + # endif + + .. warning:: + + The .:option:`HeaderDirs` list is searched until first directory name + matches the header file path. E.g. if `HeaderDirs` is set to + `include;component`, the check will result in default behavior (since + `include` is found first). + +.. option:: Prefix + + A string specifying an optional prefix that is applied to each header guard. + Default is an empty string. + + E.g. :option:`Prefix` is set to `MY_OWN_PREFIX_`: + + .. code-block:: c++ + + #ifndef MY_OWN_PREFIX_COMPONENT_HEADER_HPP + #define MY_OWN_PREFIX_COMPONENT_HEADER_HPP + ... + # endif + +.. option:: EndifComment + + A boolean that controls whether the endif namespace comment is suggested. + Default value is `false`. ---------------- EugeneZelenko wrote:
```suggestion Default is `false`. ``` Consistency with previous similar description. https://github.com/llvm/llvm-project/pull/177315 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
