
# TODO: Extend with bugprone-*?
Checks: >
  -*,
  google-readability-braces-around-statements,
  readability-identifier-naming,
  google-global-names-in-headers,
  readability-non-const-parameter,
  google-readability-casting,
  cppcoreguidelines-pro-type-cstyle-cast,
  misc-throw-by-value-catch-by-reference,
  performance-*,
  clang-analyzer*,
  boost-*,
  -boost-use-ranges,
  bugprone-forwarding-reference-overload,
  bugprone-move-forwarding-reference,
  bugprone-use-after-move,
  bugprone-unsafe-functions,
  modernize-*,
  -modernize-use-trailing-return-type,
  -modernize-pass-by-value,
  -modernize-use-auto,
  -modernize-use-nodiscard,
  -modernize-avoid-c-arrays
CheckOptions:
  - key: readability-identifier-naming.TypedefCase
    value: CamelCase
  - key: readability-identifier-naming.StructCase
    value: CamelCase
  - key: readability-identifier-naming.ClassCase
    value: CamelCase
  - key: readability-identifier-naming.EnumCase
    value: CamelCase
  - key: readability-identifier-naming.VariableCase
    value: lower_case
  - key: readability-identifier-naming.MemberCase
    value: lower_case
  - key: readability-identifier-naming.FunctionCase
    value: CamelCase
  - key: readability-identifier-naming.MethodCase
    value: CamelCase
  - key: readability-identifier-naming.ParameterCase
    value: lower_case
  - key: readability-identifier-naming.GlobalConstantCase
    value: UPPER_CASE
  - key: readability-identifier-naming.NamespaceCase
    value: camelBack
  - key: modernize-use-noexcept.UseNoexceptFalse
    value: 0
  - key: bugprone-unsafe-functions.CustomFunctions
    value: |
      ^gethostbyname$,getaddrinfo, is not thread-safe;
  # stop tokens are cheap to copy and are often necessary to copy when a new thread is created
  - key: performance-unnecessary-value-param.AllowedTypes
    value: "stop_token;StopToken"
# The default header filter is not used by waf, but is useful for feedback in editor
HeaderFilterRegex: '(?<!/build)/(_examples|clients|componentFramework|reusableComponents|standaloneTools|test)/'
