aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.clang-tidy179
1 files changed, 179 insertions, 0 deletions
diff --git a/.clang-tidy b/.clang-tidy
new file mode 100644
index 00000000..07cef37f
--- /dev/null
+++ b/.clang-tidy
@@ -0,0 +1,179 @@
+---
+Checks: '-*,bugprone-argument-comment,bugprone-assert-side-effect,bugprone-bool-pointer-implicit-conversion,bugprone-copy-constructor-init,bugprone-dangling-handle,bugprone-fold-init-type,bugprone-forward-declaration-namespace,bugprone-forwarding-reference-overload,bugprone-inaccurate-erase,bugprone-integer-division,bugprone-lambda-function-name,bugprone-macro-*,bugprone-move-forwarding-reference,bugprone-multiple-statement-macro,bugprone-parent-virtual-call,bugprone-redundant-branch-condition,bugprone-reserved-identifier,bugprone-signed-char-misuse,bugprone-sizeof-*,bugprone-string-*,bugprone-stringview-nullptr,bugprone-suspicious-*,bugprone-swapped-arguments,bugprone-terminating-continue,bugprone-too-small-loop-variable,bugprone-undefined-memory-manipulation,bugprone-undelegated-constructor,bugprone-unhandled-self-assignment,bugprone-unused-*,bugprone-use-after-move,bugprone-virtual-near-miss,cert-dcl50-cpp,cert-dcl58-cpp,cert-dcl59-cpp,cert-env33-c,cert-err33-c,cert-err34-c,cert-err60-cpp,cert-fio38-c,cert-flp30-c,cert-mem57-cpp,cert-msc30-c,cert-msc32-c,cert-msc50-cpp,cert-msc51-cpp,cert-oop57-cpp,cert-oop58-cpp,clang-analyzer-core.CallAndMessage,clang-analyzer-core.DivideZero,clang-analyzer-core.NullDereference,clang-analyzer-core.StackAddrEscapeBase,clang-analyzer-core.StackAddressEscape,clang-analyzer-core.UndefinedBinaryOperatorResult,clang-analyzer-core.uninitialized.*,clang-analyzer-cplusplus.*,clang-analyzer-deadcode.DeadStores,clang-analyzer-optin.cplusplus.*,cppcoreguidelines-c-copy-assignment-signature,cppcoreguidelines-init-variables,cppcoreguidelines-interfaces-global-init,cppcoreguidelines-macro-usage,cppcoreguidelines-narrowing-conversions,cppcoreguidelines-no-malloc,cppcoreguidelines-prefer-member-initializer,cppcoreguidelines-pro-bounds-array-to-pointer-decay,cppcoreguidelines-pro-bounds-pointer-arithmetic,cppcoreguidelines-pro-type-cstyle-cast,cppcoreguidelines-pro-type-member-init,cppcoreguidelines-slicing,cppcoreguidelines-special-member-functions,cppcoreguidelines-virtual-class-destructor,google-explicit-constructor,google-readability-namespace-comments,google-runtime-int,misc-*,modernize-avoid-*,modernize-concat-nested-namespaces,modernize-deprecated-*,modernize-loop-convert,modernize-make-*,modernize-pass-by-value,modernize-raw-string-literal,modernize-redundant-void-arg,modernize-replace-random-shuffle,modernize-return-braced-init-list,modernize-shrink-to-fit,modernize-unary-static-assert,modernize-use-auto,modernize-use-bool-literals,modernize-use-default-member-init,modernize-use-emplace,modernize-use-equals-*,modernize-use-noexcept,modernize-use-nullptr,modernize-use-override,modernize-use-transparent-functors,modernize-use-uncaught-exceptions,modernize-use-using,performance-*,readability-avoid-const-params-in-decls,readability-container-*,readability-convert-member-functions-to-static,readability-delete-null-pointer,readability-duplicate-include,readability-else-after-return,readability-function-*,readability-implicit-bool-conversion,readability-inconsistent-declaration-parameter-name,readability-make-member-function-const,readability-misleading-indentation,readability-misplaced-array-index,readability-non-const-parameter,readability-qualified-auto,readability-redundant-control-flow,readability-redundant-declaration,readability-redundant-function-ptr-dereference,readability-redundant-member-init,readability-redundant-preprocessor,readability-redundant-smartptr-get,readability-redundant-string-*,readability-simplify-*,readability-static-*,readability-string-compare,readability-suspicious-call-argument,readability-uniqueptr-delete-release,readability-uppercase-literal-suffix,readability-use-anyofallof'
+WarningsAsErrors: ''
+HeaderFilterRegex: ''
+AnalyzeTemporaryDtors: false
+FormatStyle: file
+CheckOptions:
+ - key: bugprone-argument-comment.IgnoreSingleArgument
+ value: '1'
+ - key: bugprone-argument-comment.StrictMode
+ value: '1'
+ - key: bugprone-assert-side-effect.AssertMacros
+ value: assert,NSAssert,NSCAssert,Q_ASSERT,Q_ASSERT_X
+ - key: bugprone-assert-side-effect.CheckFunctionCalls
+ value: 'true'
+# - key: bugprone-dangling-handle.HandleClasses
+# value: 'std::basic_string_view;std::experimental::basic_string_view'
+# - key: bugprone-signed-char-misuse.CharTypdefsToIgnore
+# value: ''
+# - key: bugprone-signed-char-misuse.DiagnoseSignedUnsignedCharComparisons
+# value: 'true'
+ - key: bugprone-sizeof-expression.WarnOnSizeOfIntegerExpression
+ value: 'true'
+ - key: bugprone-string-constructor.LargeLengthThreshold
+ value: '8388608'
+ - key: bugprone-string-constructor.StringNames
+ value: '::std::basic_string;::std::basic_string_view'
+ - key: bugprone-string-constructor.WarnOnLargeLength
+ value: 'true'
+# - key: bugprone-suspicious-enum-usage.StrictMode
+# value: 'false'
+# - key: bugprone-suspicious-include.HeaderFileExtensions
+# value: ';h;hh;hpp;hxx'
+# - key: bugprone-suspicious-include.ImplementationFileExtensions
+# value: 'c;cc;cpp;cxx'
+# - key: bugprone-suspicious-missing-comma.SizeThreshold
+# value: '5'
+# - key: bugprone-suspicious-string-compare.WarnOnLogicalNotComparison
+# value: 'false'
+# - key: bugprone-suspicious-string-compare.StringCompareLikeFunctions
+# value: ''
+# - key: bugprone-too-small-loop-variable.MagnitudeBitsUpperLimit
+# value: '16'
+# - key: bugprone-unhandled-self-assignment.WarnOnlyIfThisHasSuspiciousField
+# value: 'true'
+# - key: cert-dcl59-cpp.HeaderFileExtensions
+# value: ';h;hh;hpp;hxx'
+# - key: cert-msc32-c.DisallowedSeedTypes
+# value: 'time_t,std::time_t'
+# - key: cert-msc51-cpp.DisallowedSeedTypes
+# value: 'time_t,std::time_t'
+ - key: cppcoreguidelines-macro-usage.AllowedRegexp
+ value: ''
+ - key: cppcoreguidelines-macro-usage.CheckCapsOnly
+ value: 'false'
+ - key: cppcoreguidelines-narrowing-conversions.IgnoreConversionFromTypes
+ value: 'size_t;ptrdiff_t;size_type;difference_type'
+# - key: cppcoreguidelines-narrowing-conversions.PedanticMode
+# value: 'false'
+# - key: cppcoreguidelines-narrowing-conversions.WarnOnEquivalentBitWidth
+# value: 'true'
+# - key: cppcoreguidelines-narrowing-conversions.WarnOnIntegerToFloatingPointNarrowingConversion
+# value: 'true'
+ - key: cppcoreguidelines-narrowing-conversions.WarnWithinTemplateInstantiation
+ value: 'true'
+# - key: cppcoreguidelines-pro-type-member-init.UseAssignment
+# value: 'false'
+# - key: cppcoreguidelines-special-member-functions.AllowMissingMoveFunctionsWhenCopyIsDeleted
+# value: 'false'
+# - key: cppcoreguidelines-special-member-functions.AllowSoleDefaultDtor
+# value: 'false'
+ - key: google-readability-namespace-comments.SpacesBeforeComments
+ value: '1'
+ - key: google-readability-namespace-comments.ShortNamespaceLines
+ value: '25'
+# - key: misc-definitions-in-headers.HeaderFileExtensions
+# value: ';h;hh;hpp;hxx'
+ - key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
+ value: 'true'
+# - key: misc-non-private-member-variables-in-classes.IgnorePublicMemberVariables
+# value: 'false'
+# - key: modernize-loop-convert.MakeReverseRangeFunction
+# value: ''
+# - key: modernize-loop-convert.MakeReverseRangeHeader
+# value: ''
+# - key: modernize-loop-convert.MaxCopySize
+# value: '16'
+# - key: modernize-loop-convert.NamingStyle
+# value: CamelCase
+# - key: modernize-loop-convert.UseCxx20ReverseRanges
+# value: 'true'
+# - key: modernize-make-shared.IgnoreMacros
+# value: 'true'
+# - key: modernize-make-shared.IgnoreDefaultInitialization
+# value: 'true'
+# - key: modernize-make-unique.IgnoreMacros
+# value: 'true'
+# - key: modernize-make-unique.IgnoreDefaultInitialization
+# value: 'true'
+ - key: modernize-use-auto.MinTypeNameLength
+ value: '0'
+# - key: modernize-use-auto.RemoveStars
+# value: 'false'
+# - key: modernize-use-bool-literals.IgnoreMacros
+# value: 'true'
+# - key: modernize-use-default-member-init.IgnoreMacros
+# value: 'true'
+ - key: modernize-use-default-member-init.UseAssignment
+ value: 'true'
+# - key: modernize-use-emplace.SmartPointers
+# value: '::std::shared_ptr;::std::unique_ptr;::std::auto_ptr;::std::weak_ptr'
+ - key: modernize-use-emplace.TupleMakeFunctions
+ value: '::std::make_pair;::std::make_tuple'
+# - key: modernize-use-emplace.TupleTypes
+# value: '::std::pair;::std::tuple'
+# - key: modernize-use-equals-default.IgnoreMacros
+# value: 'true'
+# - key: modernize-use-equals-delete.IgnoreMacros
+# value: 'true'
+# - key: modernize-use-noexcept.UseNoexceptFalse
+# value: 'true'
+# - key: modernize-use-using.IgnoreMacros
+# value: 'true'
+ - key: modernize-raw-string-literal.DelimiterStem
+ value: ''
+# - key: modernize-raw-string-literal.ReplaceShorterLiterals
+# value: 'false'
+# - key: performance-faster-string-find.StringLikeClasses
+# value: '::std::basic_string;::std::basic_string_view'
+# - key: performance-for-range-copy.AllowedTypes
+# value: ''
+# - key: performance-for-range-copy.WarnOnAllAutoCopies
+# value: 'false'
+# - key: performance-inefficient-string-concatenation.StrictMode
+# value: 'false'
+ - key: performance-inefficient-vector-operation.VectorLikeClasses
+ value: '::std::vector,QVector,::std::deque'
+# - key: performance-unnecessary-copy-initialization.AllowedTypes
+# value: ''
+ - key: readability-else-after-return.WarnOnConditionVariables
+ value: 'true'
+# - key: readability-else-after-return.WarnOnUnfixable
+# value: 'true'
+# - key: readability-function-size.StatementThreshold
+# value: '800'
+# - key: readability-function-cognitive-complexity.DescribeBasicIncrements
+# value: 'true'
+# - key: readability-function-cognitive-complexity.IgnoreMacros
+# value: 'true'
+# - key: readability-function-cognitive-complexity.Threshold
+# value: '25'
+# - key: readability-implicit-bool-conversion.AllowIntegerConditions
+# value: 'false'
+ - key: readability-implicit-bool-conversion.AllowPointerConditions
+ value: 'true'
+# - key: readability-inconsistent-declaration-parameter-name.IgnoreMacros
+# value: 'true'
+ - key: readability-inconsistent-declaration-parameter-name.Strict
+ value: 'true'
+# - key: readability-qualified-auto.AddConstToQualified
+# value: 'true'
+# - key: readability-redundant-declaration.IgnoreMacros
+# value: 'true'
+# - key: readability-redundant-member-init.IgnoreBaseInCopyConstructors
+# value: 'false'
+# - key: readability-redundant-smartptr-get.IgnoreMacros
+# value: 'true'
+ - key: readability-simplify-boolean-expr.ChainedConditionalAssignment
+ value: 'true'
+ - key: readability-simplify-boolean-expr.ChainedConditionalReturn
+ value: 'true'
+# - key: readability-uniqueptr-delete-release.PreferResetCall
+# value: 'false'
+# - key: readability-uppercase-literal-suffix.IgnoreMacros
+# value: 'true'
+ - key: readability-uppercase-literal-suffix.NewSuffixes
+ value: 'f;F'
+...
+