Checks: 'readability-*,
 bsl-*,
 cppcoreguidelines-*,
 cppcoreguidelines-prefer-member-initializer,
 clang-analyzer-core.*,
 clang-analyzer-core.StackAddressEscape,
 bugprone-assert-side-effect,
 bugprone-assignment-in-if-condition,
 bugprone-branch-clone,
 bugprone-copy-constructor-init,
 bugprone-exception-escape,
 bugprone-forward-declaration-namespace,
 bugprone-incorrect-roundings,
 bugprone-infinite-loop,
 bugprone-integer-division,
 bugprone-macro-parentheses,
 bugprone-multiple-statement-macro,
 bugprone-parent-virtual-call,
 bugprone-redundant-branch-condition,
 bugprone-reserved-identifier,
 bugprone-sizeof-container,
 bugprone-sizeof-expression,
 bugprone-string-constructor,
 bugprone-string-integer-assignment,
 bugprone-suspicious-enum-usage,
 bugprone-suspicious-include,
 bugprone-suspicious-missing-comma,
 bugprone-suspicious-semicolon,
 bugprone-swapped-arguments,
 bugprone-terminating-continue,
 bugprone-too-small-loop-variable,
 bugprone-use-after-move,
 misc-redundant-expression,
 misc-unused-parameters,
 misc-const-correctness,
 misc-confusable-identifiers,
 misc-definitions-in-headers,
 misc-header-include-cycle,
 misc-include-cleaner,
 misc-misplaced-const,
 misc-static-assert,
 modernize-use-default-member-init,
 modernize-loop-convert,
 modernize-min-max-use-initializer-list,
 modernize-pass-by-value,
 modernize-return-braced-init-list,
 modernize-use-default-member-init,
 modernize-use-designated-initializers,
 modernize-use-equals-default,
 modernize-use-equals-delete,
 modernize-use-nullptr,
 modernize-use-override,
 modernize-use-starts-ends-with,
 modernize-use-using,
 readability-identifier-naming,
 readability-duplicate-include,
 readability-braces-around-statements,
 readability-implicit-bool-conversion,
 readability-inconsistent-declaration-parameter-name,
 readability-make-member-function-const,
 readability-misleading-indentation,
 readability-redundant-declaration,
 readability-redundant-preprocessor,
 readability-redundant-member-init,
 readability-simplify-boolean-expr,
 readability-static-accessed-through-instance,
 readability-uppercase-literal-suffix,
 readability-identifier-naming,
 readability-duplicate-include,
 readability-braces-around-statements,
 readability-implicit-bool-conversion,
 readability-inconsistent-declaration-parameter-name,
 readability-make-member-function-const,
 readability-const-return-type,
 readability-non-const-parameter,
 hicpp-signed-bitwise,
 -readability-avoid-const-params-in-decls,
 -readability-function-cognitive-complexity,
 -readability-magic-numbers,
 -readability-identifier-length,
 -cppcoreguidelines-explicit-virtual-functions,
 -cppcoreguidelines-init-variables,
 -cppcoreguidelines-non-private-member-variables-in-classes,
 -cppcoreguidelines-avoid-magic-numbers,
 -cppcoreguidelines-owning-memory,
 -cppcoreguidelines-pro-bounds-constant-array-index,
 -cppcoreguidelines-special-member-functions,
 -cppcoreguidelines-avoid-c-arrays,
 -cppcoreguidelines-pro-type-reinterpret-cast,
 -cppcoreguidelines-avoid-non-const-global-variables,
 -cppcoreguidelines-pro-bounds-pointer-arithmetic'
CheckOptions:
  - key: readability-identifier-naming.NamespaceCase
    value: lower_case
  - key: readability-identifier-naming.ClassCase
    value: CamelCase
  - key: readability-identifier-naming.PrivateMemberPrefix
    value: m_
  - key: readability-identifier-naming.StructCase
    value: CamelCase
  - key: readability-identifier-naming.FunctionCase
    value: camelBack
  - key: readability-identifier-naming.VariableCase
    value: camelBack
  - key: readability-identifier-naming.GlobalConstantCase
    value: UPPER_CASE
  - key: readability-identifier-naming.EnumConstant
    value: UPPER_CASE
  - key: bugprone-argument-comment.StrictMode
    value: 1
  - key: bugprone-exception-escape.FunctionsThatShouldNotThrow
    value: WinMain,SDL_main
  - key: misc-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
    value: 1

