Checks: >
  -*,
  clang-diagnostic-*,
  llvm-*,
  misc-*,
  -misc-const-correctness,
  -misc-include-cleaner,
  -misc-no-recursion,
  -misc-non-private-member-variables-in-classes,
  -misc-unused-parameters,
  -misc-use-anonymous-namespace,
  readability-identifier-naming

CheckOptions:
  # Type
  - { key: readability-identifier-naming.NamespaceCase,             value: lower_case }
  - { key: readability-identifier-naming.ClassCase,                 value: CamelCase  }
  - { key: readability-identifier-naming.StructCase,                value: CamelCase  }
  - { key: readability-identifier-naming.UnionCase,                 value: CamelCase  }
  - { key: readability-identifier-naming.EnumCase,                  value: CamelCase  }
  - { key: readability-identifier-naming.TypeAliasCase,             value: CamelCase  }
  - { key: readability-identifier-naming.TypedefCase,               value: CamelCase  }
  - { key: readability-identifier-naming.TypeTemplateParameterCase, value: CamelCase  }
  # Function
  - { key: readability-identifier-naming.FunctionCase,              value: camelBack  }
  - { key: readability-identifier-naming.MethodCase,                value: camelBack  }
  # Variable
  - { key: readability-identifier-naming.VariableCase,              value: CamelCase  }
  - { key: readability-identifier-naming.ParameterCase,             value: CamelCase  }
  - { key: readability-identifier-naming.MemberCase,                value: CamelCase  }
  # Constant
  - { key: readability-identifier-naming.GlobalConstantCase,        value: CamelCase  }
  - { key: readability-identifier-naming.ConstexprVariableCase,     value: CamelCase  }
  - { key: readability-identifier-naming.ClassConstantCase,         value: CamelCase  }
  - { key: readability-identifier-naming.EnumConstantCase,          value: CamelCase  }
  # Preserve canonical protocol, opcode, ABI, and ISA spellings.
  - { key: readability-identifier-naming.EnumConstantIgnoredRegexp, value: '^([A-Z][A-Z0-9_]*|Pseudo[A-Z0-9_]+)$' }
  - { key: readability-identifier-naming.MacroDefinitionCase,       value: UPPER_CASE }
  # Other
  - { key: readability-identifier-naming.IgnoreMainLikeFunctions,                  value: 1 }
  - { key: readability-redundant-member-init.IgnoreBaseInCopyConstructors,         value: 1 }
  - { key: modernize-use-default-member-init.UseAssignment,                        value: 1 }
