mirror of
https://github.com/roflmuffin/CounterStrikeSharp.git
synced 2025-12-05 23:58:24 -08:00
118 lines
5.1 KiB
YAML
118 lines
5.1 KiB
YAML
---
|
|
# Configure clang-tidy for this project.
|
|
|
|
# Here is an explanation for why some of the checks are disabled:
|
|
#
|
|
# -google-readability-namespace-comments: the *_CLIENT_NS is a macro, and
|
|
# clang-tidy fails to match it against the initial value.
|
|
#
|
|
# -modernize-use-trailing-return-type: clang-tidy recommends using
|
|
# `auto Foo() -> std::string { return ...; }`, we think the code is less
|
|
# readable in this form.
|
|
#
|
|
# --modernize-concat-nested-namespaces: clang-tidy recommends
|
|
# `namespace google::cloud {}` over `namespace google { namespace cloud { } }`
|
|
# We need to support C++14, which does not supported nested namespaces.
|
|
#
|
|
# --modernize-use-nodiscard: clang-tidy recommends adding a nodiscard annotation
|
|
# to functions where the return value should not be ignored.
|
|
# We need to support C++14, which does not supported the annotation.
|
|
#
|
|
# -modernize-return-braced-init-list: We think removing typenames and using
|
|
# only braced-init can hurt readability.
|
|
#
|
|
# -modernize-avoid-c-arrays: We only use C arrays when they seem to be the
|
|
# right tool for the job, such as `char foo[] = "hello"`. In these cases,
|
|
# avoiding C arrays often makes the code less readable, and std::array is
|
|
# not a drop-in replacement because it doesn't deduce the size.
|
|
#
|
|
# -performance-move-const-arg: This warning requires the developer to
|
|
# know/care more about the implementation details of types/functions than
|
|
# should be necessary. For example, `A a; F(std::move(a));` will trigger a
|
|
# warning IFF `A` is a trivial type (and therefore the move is
|
|
# meaningless). It would also warn if `F` accepts by `const&`, which is
|
|
# another detail that the caller need not care about.
|
|
#
|
|
# -readability-redundant-declaration: A friend declaration inside a class
|
|
# counts as a declaration, so if we also declare that friend outside the
|
|
# class in order to document it as part of the public API, that will
|
|
# trigger a redundant declaration warning from this check.
|
|
#
|
|
# -readability-function-cognitive-complexity: too many false positives with
|
|
# clang-tidy-12. We need to disable this check in macros, and that setting
|
|
# only appears in clang-tidy-13.
|
|
#
|
|
# -bugprone-narrowing-conversions: too many false positives around
|
|
# `std::size_t` vs. `*::difference_type`.
|
|
#
|
|
# -bugprone-easily-swappable-parameters: too many false positives.
|
|
#
|
|
# -bugprone-implicit-widening-of-multiplication-result: too many false positives.
|
|
# Almost any expression of the form `2 * variable` or `long x = a_int * b_int;`
|
|
# generates an error.
|
|
#
|
|
# -bugprone-unchecked-optional-access: too many false positives in tests.
|
|
# Despite what the documentation says, this warning appears after
|
|
# `ASSERT_TRUE(variable)` or `ASSERT_TRUE(variable.has_value())`.
|
|
#
|
|
Checks: >
|
|
-*,
|
|
abseil-*,
|
|
bugprone-*,GetGame
|
|
google-*,
|
|
misc-*,
|
|
modernize-*,
|
|
performance-*,
|
|
portability-*,
|
|
readability-*,
|
|
-google-readability-braces-around-statements,
|
|
-google-readability-namespace-comments,
|
|
-google-runtime-references,
|
|
-misc-non-private-member-variables-in-classes,
|
|
-misc-const-correctness,
|
|
-modernize-return-braced-init-list,
|
|
-modernize-use-trailing-return-type,
|
|
-modernize-concat-nested-namespaces,
|
|
-modernize-use-nodiscard,
|
|
-modernize-avoid-c-arrays,
|
|
-performance-move-const-arg,
|
|
-readability-braces-around-statements,
|
|
-readability-identifier-length,
|
|
-readability-magic-numbers,
|
|
-readability-named-parameter,
|
|
-readability-redundant-declaration,
|
|
-readability-function-cognitive-complexity,
|
|
-readability-convert-member-functions-to-static,
|
|
-readability-implicit-bool-conversion,
|
|
-bugprone-narrowing-conversions,
|
|
-bugprone-easily-swappable-parameters,
|
|
-bugprone-implicit-widening-of-multiplication-result,
|
|
-bugprone-unchecked-optional-access
|
|
|
|
# Turn all the warnings from the checks above into errors.
|
|
WarningsAsErrors: "*"
|
|
|
|
CheckOptions:
|
|
google-readability-braces-around-statements.ShortStatementLines: '1'
|
|
google-readability-function-size.StatementThreshold: '800'
|
|
google-readability-namespace-comments.ShortNamespaceLines: '10'
|
|
google-readability-namespace-comments.SpacesBeforeComments: '2'
|
|
readability-identifier-naming.PrivateMemberPrefix: 'm_'
|
|
readability-identifier-naming.ProtectedMemberPrefix: 'm_'
|
|
readability-identifier-naming.MemberPrefix: 'm_'
|
|
readability-identifier-naming.ClassCase: CamelCase
|
|
readability-identifier-naming.MemberCase: CamelCase
|
|
readability-identifier-naming.EnumCase: CamelCase
|
|
readability-identifier-naming.FunctionCase: CamelCase
|
|
readability-identifier-naming.ParameterCase: CamelCase
|
|
readability-identifier-naming.UnionCase: CamelCase
|
|
readability-identifier-naming.VariableCase: CamelCase
|
|
readability-identifier-naming.LocalConstantPointerPrefix: 'p'
|
|
readability-identifier-naming.VariableHungarianPrefix: On
|
|
readability-identifier-naming.ParameterHungarianPrefix: On
|
|
readability-identifier-naming.MemberHungarianPrefix: On
|
|
readability-identifier-naming.PointerParameterHungarianPrefix: On
|
|
readability-identifier-naming.PointerParameterCase: CamelCase
|
|
readability-identifier-naming.HungarianNotation.UserDefinedType.std::string: s
|
|
|