--- # 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