Initial commit
This commit is contained in:
commit
3dd53cf457
105 changed files with 35670 additions and 0 deletions
116
.clang-tidy
Normal file
116
.clang-tidy
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
---
|
||||
# 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
|
||||
Loading…
Add table
Add a link
Reference in a new issue