dsp-site/wiki/Prog/Lang/CPP/Проверка именования в Clang Tidy.adoc

1365 lines
29 KiB
Plaintext
Raw Normal View History

2019-06-01 21:08:41 +00:00
= Проверка именования в clang-tidy
:category: Программирование
:tags: C++, программирование, clang, clang-tidy, форматирование,
:toc:
Программа https://clang.llvm.org/extra/clang-tidy/[clang-tidy] может
проверить стилистику регистра идентификаторов, а также их префиксы и
суффиксы. Возможные варианты стилей:
....
lower_case
UPPER_CASE
camelBack
CamelCase
camel_Snake_Back
Camel_Snake_Case
aNy_CasE
....
Перечень вариантов идентификаторов приведён
https://clang.llvm.org/extra/clang-tidy/checks/readability-identifier-naming.html[здесь].
Для включения проверки именования идентификаторов нужно в находящемся в
корне проекта файле `.clang-tidy` включить данный тип диагностики (опция
`clang-diagnostic-*,readability-identifier-naming`), а затем указать
список выполняемых проверок и их параметры в формате YAML, например:
[source,yaml]
----
---
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: ''
...
----
https://git.246060.ru/f1x1t/clang-tidy-readability-identifier-naming[Проект]
с файлом `.clang-tidy`, в соответствии с которым проводятся проверки
именования идентификаторов.
Перечень возможных параметров конфигурационного файла, их типовые
значения и примеры соответствующего кода приведены ниже.
== Синтаксис
=== AbstractClass (Абстрактный класс)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| AbstractClassCase | `CamelCase`
| AbstractClassPrefix | `''`
| AbstractClassSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ABSTRACT_CLASS {
public:
ABSTRACT_CLASS();
};
----
Пример кода после форматирования:
[source,cpp]
----
class AbstractClass {
public:
AbstractClass();
};
----
=== Class (Класс)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ClassCase | `CamelCase`
| ClassPrefix | `''`
| ClassSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class TEST_CLASS {
public:
TEST_CLASS();
~TEST_CLASS();
};
----
Пример кода после форматирования:
[source,cpp]
----
class TestClass {
public:
TestClass();
~TestClass();
};
----
=== Struct (Структура)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| StructCase | `CamelCase`
| StructPrefix | `''`
| StructSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
struct TEST_struct {
int a;
};
----
Пример кода после форматирования:
[source,cpp]
----
struct TestStruct {
int a;
};
----
=== Union (Объединение)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| UnionCase | `CamelCase`
| UnionPrefix | `''`
| UnionSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
union TEST_union {
int a;
char b;
};
----
Пример кода после форматирования:
[source,cpp]
----
union TestUnion {
int a;
char b;
};
----
=== Enum (Перечисление)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| EnumCase | `CamelCase`
| EnumPrefix | `''`
| EnumSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
enum TEST_enum { ONE, TWO };
----
Пример кода после форматирования:
[source,cpp]
----
enum TestEnum { ONE, TWO };
----
=== EnumConstant (Значение в перечислении)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| EnumConstantCase | `UPPER_CASE`
| EnumConstantPrefix | `''`
| EnumConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
enum TestEnum { one, TWO };
----
Пример кода после форматирования:
[source,cpp]
----
enum TestEnum { ONE, TWO };
----
=== Namespace (Пространство имён)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| NamespaceCase | `lower_case`
| NamespacePrefix | `''`
| NamespaceSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
namespace TEST_ns {
}
----
Пример кода после форматирования:
[source,cpp]
----
namespace test_ns {
}
----
=== InlineNamespace (Вложенное пространство имён)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| InlineNamespaceCase | `lower_case`
| InlineNamespacePrefix | `''`
| InlineNamespaceSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
namespace test_ns {
inline namespace InlineNamespace {
}
} // namespace test_ns
----
Пример кода после форматирования:
[source,cpp]
----
namespace test_ns {
inline namespace inline_namespace {
}
} // namespace test_ns
----
=== TypeAlias (Псевдоним типа)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| TypeAliasCase | `lower_case`
| TypeAliasPrefix | `''`
| TypeAliasSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
struct MyStructure {
int a;
};
using MY_STRUCT_TYPE = MyStructure;
----
Пример кода после форматирования:
[source,cpp]
----
struct MyStructure {
int a;
};
using MyStructType = MyStructure;
----
=== Typedef (Объявление типа)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| TypedefCase | `lower_case`
| TypedefPrefix | `''`
| TypedefSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
typedef int MY_INT;
----
Пример кода после форматирования:
[source,cpp]
----
typedef int my_int;
----
== Переменные
=== Variable (Переменная) ???
=== GlobalVariable (Глобальная переменная)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| GlobalVariableCase | `lower_case`
| GlobalVariablePrefix | `''`
| GlobalVariableSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
unsigned GlobalVariable;
----
Пример кода после форматирования:
[source,cpp]
----
unsigned global_variable;
----
=== LocalVariable (Локальная переменная)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| LocalVariableCase | `camelBack`
| LocalVariablePrefix | `''`
| LocalVariableSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int function() {
int LocalVariable = 0;
return LocalVariable;
}
----
Пример кода после форматирования:
[source,cpp]
----
int function() {
int localVariable = 0;
return localVariable;
}
----
=== StaticVariable (Статическая переменная)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| StaticVariableCase | `camelBack`
| StaticVariablePrefix | `''`
| StatucVariableSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int functionWithStaticVariable() {
static int StaticVariable = 0;
return StaticVariable;
}
----
Пример кода после форматирования:
[source,cpp]
----
int functionWithStaticVariable() {
static int staticVariable = 0;
return staticVariable;
}
----
=== ConstexptVariable (Переменная constexpr)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstexprVariableCase | `lower_case`
| ConstexprVariablePrefix | `''`
| ConstexprVariableSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
constexpr int CONST_FIVE = 5;
----
Пример кода после форматирования:
[source,cpp]
----
constexpr int const_five = 5;
----
=== GlobalPointer (Глобальный указатель)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| GlobalPointerCase | `lower_case`
| GlobalPointerPrefix | `''`
| GlobalPointerSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* globalPointer;
----
Пример кода после форматирования:
[source,cpp]
----
void* global_pointer;
----
=== LocalPointer (Локальный указатель)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| LocalPointerCase | `camelBack`
| LocalPointerPrefix | `''`
| LocalPointerSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* function() {
void* LocalPointer = nullptr;
return LocalPointer;
}
----
Пример кода после форматирования:
[source,cpp]
----
void* function() {
void* localPointer = nullptr;
return localPointer;
}
----
=== Member (Член) ???
=== ClassMember (Член класса)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ClassMemberCase | `camelBack`
| ClassMemberPrefix | `''`
| ClassMemberSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithClassMember {
public:
static int CLASS_MEMBER;
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithClassMember {
public:
static int classMember;
};
----
=== ConstantMember (Константный член)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstantMemberCase | `lower_case`
| ConstantMemberPrefix | `''`
| ConstantMemberSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithConstantMember {
char const ConstMember[4] = "123";
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithConstantMember {
char const const_member[4] = "123";
};
----
=== PrivateMember (Приватный член)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| PrivateMemberCase | `camelBack`
| PrivateMemberPrefix | `'m_'`
| PrivateMemberSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithPrivateMember {
private:
int PrivateMember;
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithPrivateMember {
private:
int m_privateMember;
};
----
=== ProtectedMember (Защищённый член)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ProtectedMemberCase | `camelBack`
| ProtectedMemberPrefix | `''`
| ProtectedMemberSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithProtectedMember {
protected:
int ProtectedMember;
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithProtectedMember {
protected:
int protectedMember;
};
----
=== PublicMember (Публичный член)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| PublicMemberCase | `camelBack`
| PublicMemberPrefix | `''`
| PublicMemberSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithPublicMember {
public:
int PublicMember;
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithPublicMember {
public:
int publicMember;
};
----
== Константы
=== Constant (Константа) ???
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstantCase | `UPPER_CASE`
| ConstantPrefix | `''`
| ConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
const int theOne = 1;
----
Пример кода после форматирования:
[source,cpp]
----
const int THE_ONE = 1;
----
=== GlobalConstant (Глобальная константа)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| GlobalConstantCase | `UPPER_CASE`
| GlobalConstantPrefix | `''`
| GlobalConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
const int theOne = 1;
----
Пример кода после форматирования:
[source,cpp]
----
const int THE_ONE = 1;
----
=== LocalConstant (Локальная константа)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| LocalConstantCase | `camelBack`
| LocalConstantPrefix | `''`
| LocalConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int functionWithLocalConstant() {
const int LocalConstant = 0;
return LocalConstant;
}
----
Пример кода после форматирования:
[source,cpp]
----
int functionWithLocalConstant() {
const int localConstant = 0;
return localConstant;
}
----
=== StaticConstant (Статическая контстанта)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| StaticConstantCase | `camelBack`
| StaticConstantPrefix | `''`
| StaticConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int functionWithStaticConstant() {
const int StaticConstant = 0;
return StaticConstant;
}
----
Пример кода после форматирования:
[source,cpp]
----
int functionWithStaticConstant() {
const int staticConstant = 0;
return staticConstant;
}
----
=== ClassConstant (Константа класса)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ClassConstantCase | `UPPER_CASE`
| ClassConstantPrefix | `''`
| ClassConstantSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithClassConstant {
public:
static int const Class_Constant = 0;
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithClassConstant {
public:
static int const CLASS_CONSTANT = 0;
};
----
=== GlobalConstantPointer (Глобальный константный указатель)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| GlobalConstantPointerCase | `lower_case`
| GlobalConstantPointerPrefix | `''`
| GlobalConstantPointerSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* global_pointer;
void* const GlobalConstPointer = global_pointer;
----
Пример кода после форматирования:
[source,cpp]
----
void* global_pointer;
void* const global_const_pointer = global_pointer;
----
=== LocalConstantPointer (Локальный константный указатель)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| LocalConstantPointerCase | `camelBack`
| LocalConstantPointerPrefix | `''`
| LocalConstantPointerSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* functionWithLocalConstPointer() {
void* pointer = nullptr;
void* const LocalConstPointer = pointer;
return LocalConstPointer;
}
----
Пример кода после форматирования:
[source,cpp]
----
void* functionWithLocalConstPointer() {
void* pointer = nullptr;
void* const localConstPointer = pointer;
return localConstPointer;
}
----
== Функции
=== Function (Функция)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| FunctionCase | `camelBack`
| FunctionPrefix | `''`
| FunctionSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
static int static_function() {
return 0;
}
----
Пример кода после форматирования:
[source,cpp]
----
static int staticFunction() {
return 0;
}
----
=== GlobalFunction (Глобальная функция)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| GlobalFunctionCase | `camelBack`
| GlobalFunctionPrefix | `''`
| GlobalFunctionSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int global_function() {
return 0;
}
----
Пример кода после форматирования:
[source,cpp]
----
int globalFunction() {
return 0;
}
----
=== ConstexprFunction (Функция constexpr)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstexprFunctionCase | `camelBack`
| ConstexprFunctionPrefix | `''`
| ConstexprFunctionSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
constexpr int get_five() {
return ( 5 );
}
----
Пример кода после форматирования:
[source,cpp]
----
constexpr int getFive() {
return ( 5 );
}
----
=== Method (Метод) ???
=== ClassMethod (Метод класса)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ClassMethodCase | `camelBack`
| ClassMethodPrefix | `''`
| ClassMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithMethod {
public:
static int get_int() { return 0; };
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithMethod {
public:
static int getInt() { return 0; };
};
----
=== ConstexprMethod (Метод constexpr)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstexprMethodCase | `camelBack`
| ConstexprMethodPrefix | `''`
| ConstexprMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithConstexprMethod {
private:
constexpr int get_int() { return 0; };
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithConstexprMethod {
private:
constexpr int getInt() { return 0; };
};
----
=== VirtualMethod (Виртуальный метод)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| VirtualMethodCase | `camelBack`
| VirtualMethodPrefix | `''`
| VirtualMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithVirtualMethod {
private:
virtual int get_int() { return 0; };
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithVirtualMethod {
private:
virtual int getInt() { return 0; };
};
----
=== PrivateMethod (Приватный метод)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| PrivateMethodCase | `camelBack`
| PrivateMethodPrefix | `''`
| PrivateMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithPrivateMethod {
private:
int get_int() { return 0; };
2020-04-11 18:53:54 +00:00
};
2019-06-01 21:08:41 +00:00
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithPrivateMethod {
private:
int getInt() { return 0; };
2020-04-11 18:53:54 +00:00
};
2019-06-01 21:08:41 +00:00
----
=== ProtectedMethod (Защищённый метод)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ProtectedMethodCase | `camelBack`
| ProtectedMethodPrefix | `''`
| ProtectedMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithProtectedMethod {
protected:
int get_int() { return 0; };
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithProtectedMethod {
protected:
int getInt() { return 0; };
};
----
=== PublicMethod (Публичный метод)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| PublicMethodCase | `camelBack`
| PublicMethodPrefix | `''`
| PublicMethodSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
class ClassWithPublicMethod {
public:
int get_int() { return 0; };
};
----
Пример кода после форматирования:
[source,cpp]
----
class ClassWithPublicMethod {
public:
int getInt() { return 0; };
};
----
== Параметры
=== Parameter (Параметр)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ParameterCase | `camelBack`
| ParameterPrefix | `''`
| ParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
int returnInt(int return_Value) {
return return_Value;
};
----
Пример кода после форматирования:
[source,cpp]
----
int returnInt(int returnValue) {
return returnValue;
};
----
=== ConstantParameter (Константный параметр)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstantParameterCase | `camelBack`
| ConstantParameterPrefix | `''`
| ConstantParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
char returnChar(const char return_Value) {
return return_Value;
};
----
Пример кода после форматирования:
[source,cpp]
----
char returnChar(const char returnValue) {
return returnValue;
};
----
=== ConstantPointerParameter (Константный указатель на параметр)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ConstantPointerParameterCase | `camelBack`
| ConstantPointerParameterPrefix | `''`
| ConstantPointerParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* returnVoid(void* const return_Value) {
return return_Value;
};
----
Пример кода после форматирования:
[source,cpp]
----
void* returnVoid(void* const returnValue) {
return returnValue;
};
----
=== PointerParameter (Параметр типа указатель)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| PointerParameterCase | `camelBack`
| PointerParameterPrefix | `''`
| PointerParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
void* returnPtr(void* return_Value) {
return return_Value;
};
----
Пример кода после форматирования:
[source,cpp]
----
void* returnPtr(void* returnValue) {
return returnValue;
};
----
== Шаблоны
=== TemplateParameter (Параметр шаблона)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| TemplateParameterCase | `camelBack`
| TemplateParameterPrefix | `''`
| TemplateParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
template<typename TType> int tFunction(TType t_value) {
return 0;
}
----
Пример кода после форматирования:
[source,cpp]
----
template<typename TType> int tFunction(TType tValue) {
return 0;
}
----
=== ParameterPack (Список параметров шаблона)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ParameterPackCase | `camelBack`
| ParameterPackPrefix | `''`
| ParameterPackSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
template<class ... Types> void f(Types ... Parameters_Pack);
----
Пример кода после форматирования:
[source,cpp]
----
template<class ... Types> void f(Types ... parametersPack);
----
=== TemplateTemplateParameter (Параметр шаблона шаблона)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| TemplateTemplateParameterCase | `camelBack`
| TemplateTemplateParameterPrefix | `''`
| TemplateTemplateParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
template<template<class T> class TPL_TPL_Parameter>
class AllmightyClass { };
----
Пример кода после форматирования:
[source,cpp]
----
template<template<class T> class tplTplParameter>
class AllmightyClass { };
----
=== TypeTemplateParameter (Типа параметра шаблона)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| TypeTemplateParameterCase | `CamelCase`
| TypeTemplateParameterPrefix | `''`
| TypeTemplateParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
template<typename t_type>int tFunction(t_type value) {
return 0;
};
----
Пример кода после форматирования:
[source,cpp]
----
template<typename TType>int tFunction(TType value) {
return 0;
};
----
=== ValueTemplateParameter (Значение параметра шаблона)
[cols=",",options="header",]
|===
2020-04-11 18:53:54 +00:00
| Параметр | Значение
| ValueTemplateParameterCase | `camelBack`
| ValueTemplateParameterPrefix | `''`
| ValueTemplateParameterSuffix | `''`
2019-06-01 21:08:41 +00:00
|===
Пример кода до форматирования:
[source,cpp]
----
template<typename TType, int arg_count> int tFunction(TType tValue) {
return 0;
}
----
Пример кода после форматирования:
[source,cpp]
----
template<typename TType, int argCount> int tFunction(TType tValue) {
return 0;
}
----