Checks: >
  bugprone-*,
  clang-analyzer-*,
  cppcoreguidelines-*,
  cppcoreguidelines-noexcept-move-operations,
  modernize-*,
  modernize-use-noexcept,
  performance-*,
  performance-noexcept-move-constructor,
  readability-*,
  -modernize-use-trailing-return-type,
  -modernize-avoid-c-arrays,
  -cppcoreguidelines-avoid-magic-numbers,
  -readability-magic-numbers,
  -cppcoreguidelines-pro-type-vararg,
  -readability-identifier-length,

CheckOptions:
  - key: modernize-use-auto.MinTypeNameLength
    value: 5
  - key: readability-function-size.LineThreshold
    value: 80

  - key: modernize-use-nullptr.NullMacros
    value: 'NULL'
  - key: modernize-use-using.UseUsing
    value: true
  - key: modernize-concat-nested-namespaces.Enabled
    value: true
  - key: modernize-return-braced-init-list.Enabled
    value: true

ExtraArgs: ['-std=c++20']