---
Checks: >-
  -*,
  clang-diagnostic-*,
  clang-analyzer-*,
  bugprone-*,
  -bugprone-suspicious-include,
  bugprone-unchecked-optional-access,
  performance-*,
  -performance-no-int-to-ptr,
  readability-non-const-parameter,
  readability-redundant-*,
  cppcoreguidelines-slicing,
  readability-identifier-naming
UseColor: true
WarningsAsErrors: true
HeaderFilterRegex: ''
FormatStyle:     none
CheckOptions:
  - key:             bugprone-easily-swappable-parameters.MinimumLength
    value:           '3'
  - key:             cert-dcl16-c.NewSuffixes
    value:           'L;LL;LU;LLU'
  - key:             cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField
    value:           '0'
  - key:             cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors
    value:           '1'
  - key:             cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
    value:           '1'
  - key:             google-readability-braces-around-statements.ShortStatementLines
    value:           '1'
  - key:             google-readability-function-size.StatementThreshold
    value:           '800'
  - key:             google-readability-namespace-comments.ShortNamespaceLines
    value:           '10'
  - key:             google-readability-namespace-comments.SpacesBeforeComments
    value:           '2'
  - key:             modernize-loop-convert.MaxCopySize
    value:           '16'
  - key:             modernize-loop-convert.MinConfidence
    value:           reasonable
  - key:             modernize-loop-convert.NamingStyle
    value:           CamelCase
  - key:             modernize-pass-by-value.IncludeStyle
    value:           llvm
  - key:             modernize-replace-auto-ptr.IncludeStyle
    value:           llvm
  - key:             modernize-use-nullptr.NullMacros
    value:           'NULL'
  - key:   readability-identifier-naming.EnumCase
    value: Camel_Snake_Case
  - key:   readability-identifier-naming.ClassIgnoredRegexp
    value: '^(RagelIterator|Expectation)$'
  - key:   readability-identifier-naming.ClassCase
    value: lower_case
  - key:   readability-identifier-naming.ClassMemberCase
    value: lower_case
  - key:   readability-identifier-naming.ClassMethodCase
    value: lower_case
  - key:   readability-identifier-naming.ParameterCase
    value: camelBack
  - key:   readability-identifier-naming.ParameterPrefix
    value: ''
  - key:   readability-identifier-naming.ScopedEnumConstantCase
    value: Camel_Snake_Case
