# Part of the Carbon Language project, under the Apache License v2.0 with LLVM
# Exceptions. See /LICENSE for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

---
Checks:
  -*, bugprone-*, google-*, -google-readability-todo,
  misc-definitions-in-headers, misc-misplaced-const, misc-redundant-expression,
  misc-static-assert, misc-unconventional-assign-operator,
  misc-uniqueptr-reset-release, misc-unused-*, modernize-*,
  -modernize-avoid-c-arrays, performance-*,
  readability-braces-around-statements, readability-identifier-naming
WarningsAsErrors: true
CheckOptions:
  - { key: readability-identifier-naming.ClassCase, value: CamelCase }
  - {
      key: readability-identifier-naming.ConstexprVariableCase,
      value: CamelCase,
    }
  - { key: readability-identifier-naming.FunctionCase, value: CamelCase }
  - { key: readability-identifier-naming.NamespaceCase, value: CamelCase }
  - { key: readability-identifier-naming.StructCase, value: CamelCase }
  - {
      key: readability-identifier-naming.TemplateParameterCase,
      value: CamelCase,
    }
  - { key: readability-identifier-naming.TypeAliasCase, value: CamelCase }
  - { key: readability-identifier-naming.TypedefCase, value: CamelCase }
  - { key: readability-identifier-naming.UnionCase, value: CamelCase }
  - { key: readability-identifier-naming.VariableCase, value: lower_case }
  - { key: readability-identifier-naming.ParameterCase, value: lower_case }
  - { key: readability-identifier-naming.ClassMemberCase, value: lower_case }
