From 7133eebabfb7512024a3be5dd6870f9cecaaa826 Mon Sep 17 00:00:00 2001 From: boykopovar Date: Fri, 25 Sep 2026 14:56:13 +0300 Subject: [PATCH] docs(code): add en code style conventions --- README.md | 2 +- docs/CONVENTIONS.md | 16 +++++++++------- docs/TechnicalDebt.md | 2 +- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 43cd1e868..41af87e63 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ The [shader recompiler](core/shader/recompiler/Recompiler.cpp) successfully prod The real game reaches the logo, main menu, and [gameplay](https://gist.github.com/user-attachments/assets/81d28e9b-c237-4545-b2ca-720071129816) with audio. -[Technical debt of the project](docs/TechnicalDebt.md) +[Technical debt of the project](docs/TechnicalDebt.md), [code style conventions](docs/CONVENTIONS.md) ## Build diff --git a/docs/CONVENTIONS.md b/docs/CONVENTIONS.md index f26ec5976..12373ef73 100644 --- a/docs/CONVENTIONS.md +++ b/docs/CONVENTIONS.md @@ -1,9 +1,11 @@ -# Соглашения по написанию кода +# Coding Conventions -### Именования C++ +### C++ Naming Conventions -- Название интерфейса (класса с виртуальными методами без реализации) начинается с `I` (как в C#). -- Названия классов, публичных методов: PascalCase. -- Названия приватных методов и полей: \_camelCase. -- названия аргументов функций: camelCase. -- Названия параметров шаблона в стиле C#: `TKey`, `TValue`, `TIterator`. +- Interface names (classes containing only pure virtual methods with no implementation) start with `I`, as in C#. +- Class names and public method names use PascalCase. +- Private method and field names use camelCase. +- Function argument names use camelCase. +- Template parameter names follow the C# style: `TKey`, `TValue`, `TIterator`. + +Comments in code can only be added to indicate areas of [technical debt](TechnicalDebt.md) (only by a human), the end of `#endif`, and the end of namespace. diff --git a/docs/TechnicalDebt.md b/docs/TechnicalDebt.md index d7a553901..bf4a06b7c 100644 --- a/docs/TechnicalDebt.md +++ b/docs/TechnicalDebt.md @@ -2,7 +2,7 @@ ### Build -- Building on Windows requires a specific version of mingw MinGW-w64 GCC 15.2.0 (`winlibs-gcc15`, `x86_64-ucrt-posix-seh`) +- Building on Windows requires a specific version of mingw - MinGW-w64 GCC 15.2.0 (`winlibs-gcc15`, `x86_64-ucrt-posix-seh`) - Even compiled prx libraries on Windows require nearby (static linking of these dependencies causes conflicts): - libgcc_s_seh-1.dll - libstdc++-6.dll