65 lines
3.2 KiB
YAML
65 lines
3.2 KiB
YAML
---
|
|
# Linux-style naming conventions for C++ projects
|
|
Checks: >
|
|
readability-identifier-naming,
|
|
readability-braces-around-statements,
|
|
readability-function-size,
|
|
modernize-use-nullptr,
|
|
modernize-use-override,
|
|
performance-*,
|
|
-modernize-use-trailing-return-type
|
|
|
|
CheckOptions:
|
|
# Classes and structs use CamelCase (C++ convention)
|
|
- { key: readability-identifier-naming.ClassCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.StructCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.EnumCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.UnionCase, value: CamelCase }
|
|
|
|
# Functions and methods use snake_case (Linux style)
|
|
- { key: readability-identifier-naming.FunctionCase, value: lower_case }
|
|
- { key: readability-identifier-naming.MethodCase, value: lower_case }
|
|
|
|
# Member variables: snake_case with trailing underscore
|
|
- { key: readability-identifier-naming.PrivateMemberCase, value: lower_case }
|
|
- { key: readability-identifier-naming.PrivateMemberSuffix, value: '_' }
|
|
- { key: readability-identifier-naming.ProtectedMemberCase, value: lower_case }
|
|
- { key: readability-identifier-naming.ProtectedMemberSuffix, value: '_' }
|
|
- { key: readability-identifier-naming.PublicMemberCase, value: lower_case }
|
|
|
|
# Parameters and local variables: snake_case
|
|
- { key: readability-identifier-naming.ParameterCase, value: lower_case }
|
|
- { key: readability-identifier-naming.VariableCase, value: lower_case }
|
|
- { key: readability-identifier-naming.LocalVariableCase, value: lower_case }
|
|
|
|
# Constants and macros: UPPER_CASE
|
|
- { key: readability-identifier-naming.ConstantCase, value: UPPER_CASE }
|
|
- { key: readability-identifier-naming.ConstexprVariableCase, value: UPPER_CASE }
|
|
- { key: readability-identifier-naming.MacroDefinitionCase, value: UPPER_CASE }
|
|
- { key: readability-identifier-naming.EnumConstantCase, value: UPPER_CASE }
|
|
|
|
# Global variables: snake_case with g_ prefix (optional, can remove prefix)
|
|
- { key: readability-identifier-naming.GlobalVariableCase, value: lower_case }
|
|
- { key: readability-identifier-naming.GlobalVariablePrefix, value: 'g_' }
|
|
|
|
# Namespaces: snake_case
|
|
- { key: readability-identifier-naming.NamespaceCase, value: lower_case }
|
|
|
|
# Template parameters: CamelCase
|
|
- { key: readability-identifier-naming.TypeTemplateParameterCase, value: CamelCase }
|
|
- { key: readability-identifier-naming.ValueTemplateParameterCase, value: lower_case }
|
|
|
|
# Typedef and type aliases: snake_case_t suffix (Linux style)
|
|
- { key: readability-identifier-naming.TypedefCase, value: lower_case }
|
|
- { key: readability-identifier-naming.TypedefSuffix, value: '_t' }
|
|
- { key: readability-identifier-naming.TypeAliasCase, value: lower_case }
|
|
- { key: readability-identifier-naming.TypeAliasSuffix, value: '_t' }
|
|
|
|
# Function size limits
|
|
- { key: readability-function-size.LineThreshold, value: 100 }
|
|
- { key: readability-function-size.StatementThreshold, value: 50 }
|
|
|
|
WarningsAsErrors: ''
|
|
HeaderFilterRegex: 'src/.*\.h$'
|
|
FormatStyle: file
|