28 KiB
title | category | tags | summary | CSS | toc |
---|---|---|---|---|---|
Проверка именования в Clang Tidy | Программирование | C++, программирование, clang, clang-tidy | table-100.css | yes |
Checks: 'clang-diagnostic-*,readability-identifier-naming' CheckOptions:
- key: readability-identifier-naming.VariableCase value: lower_case
- key: readability-identifier-naming.VariablePrefix value: ''
- key: readability-identifier-naming.VariableSuffix value: '' ...
Перечень возможных параметров конфигурационного файла, их типовые значения
и примеры соответствующего кода приведены ниже.
## Синтаксис
### AbstractClass (Абстрактный класс)
Параметр | Значение
-------------------------------|----------------
AbstractClassCase | `CamelCase`
AbstractClassPrefix | `''`
AbstractClassSuffix | `''`
Пример кода до форматирования:
```cpp
class ABSTRACT_CLASS {
public:
ABSTRACT_CLASS();
};
Пример кода после форматирования:
class AbstractClass {
public:
AbstractClass();
};
Class (Класс)
Параметр | Значение |
---|---|
ClassCase | CamelCase |
ClassPrefix | '' |
ClassSuffix | '' |
Пример кода до форматирования:
class TEST_CLASS {
public:
TEST_CLASS();
~TEST_CLASS();
};
Пример кода после форматирования:
class TestClass {
public:
TestClass();
~TestClass();
};
Struct (Структура)
Параметр | Значение |
---|---|
StructCase | CamelCase |
StructPrefix | '' |
StructSuffix | '' |
Пример кода до форматирования:
struct TEST_struct {
int a;
};
Пример кода после форматирования:
struct TestStruct {
int a;
};
Union (Объединение)
Параметр | Значение |
---|---|
UnionCase | CamelCase |
UnionPrefix | '' |
UnionSuffix | '' |
Пример кода до форматирования:
union TEST_union {
int a;
char b;
};
Пример кода после форматирования:
union TestUnion {
int a;
char b;
};
Enum (Перечисление)
Параметр | Значение |
---|---|
EnumCase | CamelCase |
EnumPrefix | '' |
EnumSuffix | '' |
Пример кода до форматирования:
enum TEST_enum { One, Two };
Пример кода после форматирования:
enum TestEnum { One, Two };
EnumConstant (Значение в перечислении)
Параметр | Значение |
---|---|
EnumConstantCase | CamelCase |
EnumConstantPrefix | '' |
EnumConstantSuffix | '' |
Пример кода до форматирования:
enum TestEnum { one, two };
Пример кода после форматирования:
enum TestEnum { One, Two };
Namespace (Пространство имён)
Параметр | Значение |
---|---|
NamespaceCase | lower_case |
NamespacePrefix | '' |
NamespaceSuffix | '' |
Пример кода до форматирования:
namespace TEST_ns {
...
}
Пример кода после форматирования:
namespace test_ns {
...
}
InlineNamespace (Вложенное пространство имён)
Параметр | Значение |
---|---|
InlineNamespaceCase | lower_case |
InlineNamespacePrefix | '' |
InlineNamespaceSuffix | '' |
Пример кода до форматирования:
namespace test_ns {
inline namespace InlineNamespace {
...
}
} // namespace test_ns
Пример кода после форматирования:
namespace test_ns {
inline namespace inline_namespace {
...
}
} // namespace test_ns
TypeAlias (Псевдоним типа)
Параметр | Значение |
---|---|
TypeAliasCase | lower_case |
TypeAliasPrefix | '' |
TypeAliasSuffix | '' |
Пример кода до форматирования:
using MY_STRUCT_TYPE = MyStructure;
Пример кода после форматирования:
using my_struct_type = MyStructure;
Typedef (Объявление типа)
Параметр | Значение |
---|---|
TypedefCase | lower_case |
TypedefPrefix | '' |
TypedefSuffix | '' |
Пример кода до форматирования:
typedef int MY_INT;
Пример кода после форматирования:
typedef int my_int;
Переменные
Variable (Переменная)
Параметр | Значение |
---|---|
VariableCase | lower_case |
VariablePrefix | '' |
VariableSuffix | '' |
Пример кода до форматирования:
unsigned TestVariable;
Пример кода после форматирования:
unsigned testvariable;
GlobalVariable (Глобальная переменная)
Параметр | Значение |
---|---|
VariableCase | lower_case |
VariablePrefix | '' |
VariableSuffix | '' |
Пример кода до форматирования:
unsigned GlobalVariable;
Пример кода после форматирования:
unsigned globalvariable;
LocalVariable (Локальная переменная)
Параметр | Значение |
---|---|
LocalVariableCase | lower_case |
LocalVariablePrefix | '' |
LocalVariableSuffix | '' |
Пример кода до форматирования:
unsigned Local_Variable;
Пример кода после форматирования:
unsigned local_variable;
StaticVariable (Статическая переменная)
Параметр | Значение |
---|---|
StaticVariableCase | lower_case |
StatcVariablePrefix | '' |
StatucVariableSuffix | '' |
Пример кода до форматирования:
unsigned staticVariable;
Пример кода после форматирования:
unsigned staticvariable;
ConstexptVariable (Переменная constexpr)
GlobalPointer (Глобальный указатель)
LocalPointer(Локальный указатель)
Member (Член)
ClassMember (Член класса)
PrivateMember (Приватная переменная)
ProtectedMember (Защищённая переменная)
PublicMember (Публичная переменная)
Константы
Constant (Константа)
GlobalConstant (Глобальная константа)
LocalConstant (Локальная константа)
StaticConstant (Статическая контстанта)
ClassConstant (Константа класса)
GlobalConstantPointer (Глобальный константный указатель)
LocalConstantPointer (Локальный константный указатель)
ConstMember (Константный член)
Функции
Function (Функция)
GlobalFunction (Глобальная функция)
ConstexptFunction (Функция constexpr)
Method (Метод)
ClassMethod (Метод класса)
ConstexprMethod (Метод constexpr)
VirtualMethod (Виртуальный метод)
PrivateMethod (Приватный метод)
ProtectedMethod (Защищённый метод)
PublicMethod (Публичный метод)
Параметры
Параметр
Константный параметр
Константный указатель на параметр
Список парамтров
Параметр-укзатель
Параметр шаблона
Параметр шаблона шаблона
Типа параметра шаблона
Значение параметра шаблона
ConstantParameterCase, ConstantParameterPrefix, ConstantParameterSuffix
ConstantPointerParameterCase, ConstantPointerParameterPrefix, ConstantPointerParameterSuffix
ParameterCase, ParameterPrefix, ParameterSuffix
ParameterPackCase, ParameterPackPrefix, ParameterPackSuffix
PointerParameterCase, PointerParameterPrefix, PointerParameterSuffix
TemplateParameterCase, TemplateParameterPrefix, TemplateParameterSuffix
TemplateTemplateParameterCase, TemplateTemplateParameterPrefix, TemplateTemplateParameterSuffix
TypeTemplateParameterCase, TypeTemplateParameterPrefix, TypeTemplateParameterSuffix
ValueTemplateParameterCase, ValueTemplateParameterPrefix, ValueTemplateParameterSuffix
Лексическая единица Регистр имени абстрактного класса
Параметр readability-identifier-naming.AbstractClassCase
Значение CamelCase
Пример ATestClass
Пример кода:
class ATestClass {
};
Лексическая единица: Префикс имени абстрактного класса
Параметр: readability-identifier-naming.AbstractClassPrefix
Значение: 'A'
Пример: ATestClass
Пример кода:
class ATestClass {
};
Лексическая единица: Регистр имени класса
Параметр: readability-identifier-naming.ClassCase
Значение: CamelCase
Пример: EasyTest
Пример кода:
class EasyTest {
};
Лексическая единица: Префикс имени класса
Параметр: readability-identifier-naming.ClassPrefix
Значение: '' (было 'C')
Пример: EasyTest
Пример кода:
class EasyTest {
};
Лексическая единица: Регистр имена константы класса
Параметр: readability-identifier-naming.ClassConstantCase
Значение: CamelCase
Пример: FixedValue
Пример кода:
class EasyTest {
const int FixedValue = 1;
};
Лексическая единица: Префикс имени константы класса
Параметр: readability-identifier-naming.ClassConstantPrefix
Значение: '' (было 'k')
Пример: FixedValue
Пример кода:
class EasyTest {
static const int FixedValue = 1;
};
????? Лексическая единица: Регистр имени члена класса Параметр: readability-identifier-naming.ClassMemberCase Значение: CamelCase Пример: Пример кода:
?????
Лексическая единица: Регистр имени метода класса
Параметр: readability-identifier-naming.ClassMethodCase
Значение: camelBack
Пример: getValue
Пример кода:
class EasyTest {
public:
int getValue();
};
Лексическая единица: Регистр имени константы
Параметр: readability-identifier-naming.ConstantCase
Значение: UPPER_CASE
Пример: BLACK_COLOR
Пример кода:
const unsigned BLACK_COLOR = 0;
????? Лексическая единица: Суффикс имени константы Параметр: readability-identifier-naming.ConstantSuffix Значение: '' (было '_CST') Пример: Пример кода:
?????
Лексическая единица: Регистр имени функции, возвращающей константное значение
Параметр: readability-identifier-naming.ConstexprFunctionCase
Значение: lower_case
Пример: get_five
Пример кода:
constexpr int get_five() {
return ( 2 + 3 );
};
Лексическая единица: Регистт имени метода, возвращающего константное значение
Параметр: readability-identifier-naming.ConstexprMethodCase
Значение: lower_case
Пример: get_five
Пример кода:
class EasyTest {
constexpr int get_five() {
return ( 2 + 3 );
};
};
Лексическая единица: Регистр имени константной переменной, получающей значение из функции
Параметр: readability-identifier-naming.ConstexprVariableCase
Значение: lower_case
Пример: const_five
Пример кода:
constexpr int get_five() {
return ( 2 + 3 );
};
constexpr int const_five = get_five();
Лексическая единица: Регистр имени перечисления
Параметр: readability-identifier-naming.EnumCase
Значение: CamelCase
Пример: CurrentState
Пример кода:
enum CurrentState {
OK = 0,
ERROR = 1
};
Лексическая единица: Префикс имени перечисления Параметр: readability-identifier-naming.EnumPrefix Значение: '' (было 'E') Пример: Пример кода:
enum CurrentState {
OK = 0,
ERROR = 1
};
Лексическая единица: Регистр имени константы в перечислении
Параметр: readability-identifier-naming.EnumConstantCase
Значение: UPPER_CASE
Пример: OK
Пример кода:
enum CurrentState {
OK = 0,
ERROR = 1
};
Лексическая единица: Регистр имени статической функции
Параметр: readability-identifier-naming.FunctionCase
Значение: camelBack
Пример: staticFunction
Пример кода:
static void staticFunction();
Лексическая единица: Регистр имени глобальной константы
Параметр: readability-identifier-naming.GlobalConstantCase
Значение: UPPER_CASE
Пример: BLACK_COLOR
Пример кода:
const int BLACK_COLOR = 0;
Лексическая единица: Регистр имени глобальной функции
Параметр: readability-identifier-naming.GlobalFunctionCase
Значение: CamelCase
Пример: GlobalFunction
Пример кода:
void GlobalFunction();
Лексическая единица: Регистр имени глобальной переменной
Параметр: readability-identifier-naming.GlobalVariableCase
Значение: lower_case
Пример: g_useful_variable
Пример кода:
int g_useful_variable = 0;
Лексическая единица: Префикс имени глобальной переменной
Параметр: readability-identifier-naming.GlobalVariablePrefix
Значение: 'g_'
Пример: g_useful_variable
Пример кода:
int g_useful_variable = 0;
???? Лексическая единица: Параметр: readability-identifier-naming.InlineNamespaceCase Значение: lower_case Пример: Пример кода:
?????
Лексическая единица: Регистр имени локальной константы
Параметр: readability-identifier-naming.LocalConstantCase
Значение: CamelCase
Пример: BlackColor
Пример кода:
void GlobalFunc() {
const int BlackColor = 0;
}
Лексическая единица: Префикс имени локальной константы
Параметр: readability-identifier-naming.LocalConstantPrefix
Значение: '' (было 'k')
Пример: BlackColor
Пример кода:
void GlobalFunc() {
const int BlackColor = 0;
}
Лексическая единица: Регистр имени локальной переменной
Параметр: readability-identifier-naming.LocalVariableCase
Значение: lower_case
Пример: black_color
Пример кода:
void GlobalFunc() {
int black_color = 0;
}
????? Лексическая единица: Параметр: readability-identifier-naming.MemberCase Значение: CamelCase Пример: Пример кода:
????
????? Лексическая единица: Параметр: readability-identifier-naming.MemberPrefix Значение: 'm_' Пример: Пример кода:
????
Лексическая единица: Регистр имени константного члена класса
Параметр: readability-identifier-naming.ConstantMemberCase
Значение: lower_case
Пример: black_color
Пример кода:
class TestClass {
public:
const int black_color = 0;
};
Лексическая единица: Префикс имени приватного члена класса
Параметр: readability-identifier-naming.PrivateMemberPrefix
Значение: '__'
Пример: __black_color
Пример кода:
class TestClass {
private:
int __black_color = 0;
};
Лексическая единица: Префикс имени защищённого члена класса
Параметр: readability-identifier-naming.ProtectedMemberPrefix
Значение: '_'
Пример: _black_color
Пример кода:
class TestClass {
protected:
int _black_color = 0;
};
Лексическая единица: Префикс имени публичного члена класса
Параметр: readability-identifier-naming.PublicMemberCase
Значение: lower_case
Пример: black_color
Пример кода:
class TestClass {
public:
int black_color = 0;
};
Лексическая единица: Регистр имени публичного метода
Параметр: readability-identifier-naming.MethodCase
Значение: camelBack
Пример: testMethod
Пример кода:
class TestClass {
public:
void testMethod();
};
Лексическая единица: Регистр имени приватного метода
Параметр: readability-identifier-naming.PrivateMethodPrefix
Значение: '__'
Пример: __testMethod
Пример кода:
class TestClass {
private:
void __testMethod();
};
Лексическая единица: Регистр имени защищённого метода
Параметр: readability-identifier-naming.ProtectedMethodPrefix
Значение: '_'
Пример: _testMethod
Пример кода:
class TestClass {
protected:
void _testMethod();
};
Лексическая единица: Регистр имени пространства имён
Параметр: readability-identifier-naming.NamespaceCase
Значение: lower_case
Пример: upper_ns
Пример кода:
namespace upper_ns {
}
Лексическая единица: Регистр имени параметра
Параметр: readability-identifier-naming.ParameterCase
Значение: camelBack
Пример: inputValue
Пример кода:
void GlobalFunction(int inputValue) {
}
Лексическая единица: Префикс имени параметра
Параметр: readability-identifier-naming.ParameterPrefix
Значение: '' (было 'a_')
Пример: inputValue
Пример кода:
void GlobalFunction(int inputValue) {
}
Лексическая единица: Регистр имени констатного параметра
Параметр: readability-identifier-naming.ConstantParameterCase
Значение: camelBack
Пример: inputValue
Пример кода:
void GlobalFunction(const int inputValue) {
}
Лексическая единица: Префикс имени константного параметра Параметр: readability-identifier-naming.ConstantParameterPrefix Значение: '' (было 'i_') Пример: Пример кода:
void GlobalFunction(const int inputValue) {
}
????? Лексическая единица: Параметр: readability-identifier-naming.ParameterPackCase Значение: camelBack Пример: Пример кода:
????
????? Лексическая единица: Параметр: readability-identifier-naming.PureFunctionCase Значение: lower_case Пример: Пример кода:
?????
????? Лексическая единица: Параметр: readability-identifier-naming.PureMethodCase Значение: camelBack Пример: Пример кода:
?????
?????
Лексическая единица: Регистр имени статической константы
Параметр: readability-identifier-naming.StaticConstantCase
Значение: UPPER_CASE
Пример: BLACK_COLOR
Пример кода:
void GlobalFunction() {
static const int BLACK_COLOR = 0;
}
Лексическая единица: Регистр имени статической переменной
Параметр: readability-identifier-naming.StaticVariableCase
Значение: camelBack
Пример: blackColor
Пример кода:
void GlobalFunction() {
static int blackColor = 0;
}
Лексическая единица: Префикс имени статической переменной
Параметр: readability-identifier-naming.StaticVariablePrefix
Значение: '' (было 's_')
Пример: blackColor
Пример кода:
void GlobalFunction() {
static int blackColor = 0;
}
Лексическая единица: Регист имени структуры
Параметр: readability-identifier-naming.StructCase
Значение: lower_case
Пример: pair_struct
Пример кода:
struct pair_struct {
int key;
char value;
};
Лексическая единица: Параметр: readability-identifier-naming.TemplateParameterCase Значение: UPPER_CASE Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.TemplateTemplateParameterCase Значение: CamelCase Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.TemplateUsingCase Значение: lower_case Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.TemplateUsingPrefix Значение: 'u_' Пример: Пример кода:
//
Лексическая единица: Регистр имени шаблонного типа Параметр: readability-identifier-naming.TypeTemplateParameterCase Значение: СamelCase Пример: Пример кода:
template <typename T1> class TestClass {
T1 __v;
};
Лексическая единица: Суффикс имени шаблонного типа Параметр: readability-identifier-naming.TypeTemplateParameterSuffix Значение: '' (было '_t') Пример: Пример кода:
template <typename T1> class TestClass {
T1 __v;
};
Лексическая единица: Регистр имени нового типа
Параметр: readability-identifier-naming.TypedefCase
Значение: lower_case
Пример: i32_t
Пример кода:
typedef int32_t i32_t;
Лексическая единица: Суффикс имени нового типа
Параметр: readability-identifier-naming.TypedefSuffix
Значение: '_t'
Пример: i32_t
Пример кода:
typedef int32_t i32_t;
Лексическая единица: Регистр имени объединения
Параметр: readability-identifier-naming.UnionCase
Значение: CamelCase
Пример: IntValue
Пример кода:
union IntValue {
int a;
unsigned b;
};
Лексическая единица: Префикс имени объединения
Параметр: readability-identifier-naming.UnionPrefix
Значение: '' (было 'U')
Пример: InvValue
Пример кода:
union IntValue {
int a;
unsigned b;
};
Лексическая единица: Параметр: readability-identifier-naming.UsingCase Значение: lower_case Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.ValueTemplateParameterCase Значение: camelBack Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.VariableCase Значение: lower_case Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.VirtualMethodCase Значение: UPPER_CASE Пример: Пример кода:
//
Лексическая единица: Параметр: readability-identifier-naming.IgnoreFailedSplit Значение: 0 Пример: Пример кода:
//
Лексическая единица: Префикс виртуального метода
Параметр: readability-identifier-naming.VirtualMethodPrefix
Значение: 'v_'
Пример: v_Test
Пример кода:
class TestClass {
public:
virtual void v_Test() = 0;
};
Лексическая единица: Параметр: Значение: Пример: Пример кода:
//
Параметр | Значение |
---|---|
Case | `` |
Prefix | '' |
Suffix | '' |
Пример кода до форматирования:
//
Пример кода после форматирования:
//