Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/README.md
diff options
context:
space:
mode:
authorLeitwolf112026-11-13 17:38:17 +0300
committerLeitwolf112026-11-13 17:38:17 +0300
commitaabd11c1321da173918ad48a2ffb7da5e6d90756 (patch)
tree12e428e1f7bdf1f3173842f9e4e84a53ce3a39bb /README.md
parent98e0e3d6fbde5fd5634e38ea5cc143da688545a0 (diff)
downloadprogmasoft-cpp-docs/guidelines-layout.tar.gz
Use the two names consistentlydocs/guidelines-layout
Progmasoft C/C++ Styles names the repository, where a text speaks of all of it: the README introduction, the license texts, CONTRIBUTING and the changelog. Progmasoft Core C++ Coding Guidelines names its C++ guide, and its own documents call it "the guidelines", in the plural like its name, instead of "the guide" or "this guide"; the verbs follow. Dated changelog entries keep their wording. Paragraphs that grew past 120 columns are rewrapped; every link and anchor still resolves. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'README.md')
-rw-r--r--README.md18
1 files changed, 10 insertions, 8 deletions
diff --git a/README.md b/README.md
index 5d3fc90..7b23c9a 100644
--- a/README.md
+++ b/README.md
@@ -34,7 +34,7 @@ The guidelines for C++17 and C++20, in `Progmasoft_Core_Cpp_Coding_Guidelines/`.
| Chapter | Covers |
| --- | --- |
-| [1. Principles](Progmasoft_Core_Cpp_Coding_Guidelines/Common/PRINCIPLES.md) | what the guide optimizes for, and how to decide a case it does not cover |
+| [1. Principles](Progmasoft_Core_Cpp_Coding_Guidelines/Common/PRINCIPLES.md) | what the guidelines optimize for, and how to decide a case they do not cover |
| [2. Formatting](Progmasoft_Core_Cpp_Coding_Guidelines/Common/FORMATTING.md) | the `.clang-format` profile, and what formatting leaves to the author |
| [3. Naming](Progmasoft_Core_Cpp_Coding_Guidelines/Common/NAMING.md) | types, functions, variables, constants, namespaces, files, macros |
| [4. Files and headers](Progmasoft_Core_Cpp_Coding_Guidelines/Common/FILES-AND-HEADERS.md) | extensions, `#pragma once`, includes, file size, the order inside a file |
@@ -55,17 +55,19 @@ Each version has a page of its own with the rules that use its features:
| [C++20](Progmasoft_Core_Cpp_Coding_Guidelines/Cpp20/LANGUAGE.md) | the default: concepts, designated initializers, defaulted comparisons, ranges, `std::span`, `std::format` |
| [C++17](Progmasoft_Core_Cpp_Coding_Guidelines/Cpp17/LANGUAGE.md) | for libraries used by other projects: the C++17 form of each C++20 rule, and the checks for later standards |
-The guide is in `Progmasoft_Core_Cpp_Coding_Guidelines/`: `Common/` holds what applies to both versions, `Cpp20/` and `Cpp17/` what
-applies to one. [`index.json`](Progmasoft_Core_Cpp_Coding_Guidelines/index.json) lists every document with its chapter and the versions it
-applies to, for tools that show or check the guide.
+The guidelines are in `Progmasoft_Core_Cpp_Coding_Guidelines/`: `Common/` holds what applies to both versions, `Cpp20/`
+and `Cpp17/` what applies to one. [`index.json`](Progmasoft_Core_Cpp_Coding_Guidelines/index.json) lists every document
+with its chapter and the versions it applies to, for tools that show or check the guidelines.
-[Adopting the guide](ADOPTING.md) explains how a project points to this guide, which files it copies and how it
+[Adopting the guidelines](ADOPTING.md) explains how a project points to them, which files it copies and how it
records a deviation. [Contributing](CONTRIBUTING.md) explains how to propose a change to a rule.
### The short version
-- C++17 or C++20, formatted by the [clang-format profile](Progmasoft_Core_Cpp_Coding_Guidelines/Common/FORMATTING.md#the-profile), checked by the
- [clang-tidy profile](Progmasoft_Core_Cpp_Coding_Guidelines/Common/TOOLING.md#132-the-clang-tidy-profile) with every warning an error.
+- C++17 or C++20, formatted by the [clang-format
+ profile](Progmasoft_Core_Cpp_Coding_Guidelines/Common/FORMATTING.md#the-profile), checked by the [clang-tidy
+ profile](Progmasoft_Core_Cpp_Coding_Guidelines/Common/TOOLING.md#132-the-clang-tidy-profile) with every warning an
+ error.
- `PascalCase` for types, functions and namespaces; `camelCase` for variables and parameters; `name_` for private data
members; `kPascalCase` for constants and enumerators; `UPPER_SNAKE_CASE` for macros.
- Four spaces, braces on their own line, 80 columns, the return type on its own line.
@@ -74,7 +76,7 @@ records a deviation. [Contributing](CONTRIBUTING.md) explains how to propose a c
- No `using namespace`. No exceptions in libraries and tools: recoverable failures return `Expected<T>` or `Error`.
- Ownership is visible in the type: values and `std::unique_ptr` own, references and views borrow.
- Every public declaration has a `///` comment, in US English.
-- Tests sit next to the code they test; sanitizers and fuzzers run in CI. The guide prescribes no test, fuzzing or
+- Tests sit next to the code they test; sanitizers and fuzzers run in CI. The guidelines prescribe no test, fuzzing or
benchmark framework, and no error library: it prescribes how they are used.
## License