Skip to content

Commit 0519689

Browse files
addaleaxtargos
authored andcommitted
doc: fix heading levels in C++ style guide
Adjust heading levels to align with the table of contents. Refs: #23028 PR-URL: #23061 Reviewed-By: Vse Mozhet Byt <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Tobias Nießen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Joyee Cheung <[email protected]> Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Daniel Bevenius <[email protected]>
1 parent 29a9e84 commit 0519689

File tree

1 file changed

+18
-18
lines changed

1 file changed

+18
-18
lines changed

CPP_STYLE_GUIDE.md

+18-18
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,11 @@ these rules:
3232

3333
## Formatting
3434

35-
## Left-leaning (C++ style) asterisks for pointer declarations
35+
### Left-leaning (C++ style) asterisks for pointer declarations
3636

3737
`char* buffer;` instead of `char *buffer;`
3838

39-
## C++ style comments
39+
### C++ style comments
4040

4141
Use C++ style comments (`//`) for both single-line and multi-line comments.
4242
Comments should also start with uppercase and finish with a dot.
@@ -56,7 +56,7 @@ preferred style. Feel free to update old comments to the preferred style when
5656
working on code in the immediate vicinity or when changing/improving those
5757
comments.
5858

59-
## 2 spaces of indentation for blocks or bodies of conditionals
59+
### 2 spaces of indentation for blocks or bodies of conditionals
6060

6161
```c++
6262
if (foo)
@@ -76,7 +76,7 @@ Braces are optional if the statement body only has one line.
7676

7777
`namespace`s receive no indentation on their own.
7878

79-
## 4 spaces of indentation for statement continuations
79+
### 4 spaces of indentation for statement continuations
8080

8181
```c++
8282
VeryLongTypeName very_long_result = SomeValueWithAVeryLongName +
@@ -85,7 +85,7 @@ VeryLongTypeName very_long_result = SomeValueWithAVeryLongName +
8585

8686
Operators are before the line break in these cases.
8787

88-
## Align function arguments vertically
88+
### Align function arguments vertically
8989

9090
```c++
9191
void FunctionWithAVeryLongName(int parameter_with_a_very_long_name,
@@ -101,7 +101,7 @@ void FunctionWithAReallyReallyReallyLongNameSeriouslyStopIt(
101101
...);
102102
```
103103

104-
## Initialization lists
104+
### Initialization lists
105105

106106
Long initialization lists are formatted like this:
107107

@@ -115,7 +115,7 @@ HandleWrap::HandleWrap(Environment* env,
115115
handle_(handle) {
116116
```
117117
118-
## CamelCase for methods, functions, and classes
118+
### CamelCase for methods, functions, and classes
119119
120120
Exceptions are simple getters/setters, which are named `property_name()` and
121121
`set_property_name()`, respectively.
@@ -131,15 +131,15 @@ class FooBar {
131131
};
132132
```
133133

134-
## snake\_case for local variables and parameters
134+
### snake\_case for local variables and parameters
135135

136136
```c++
137137
int FunctionThatDoesSomething(const char* important_string) {
138138
const char* pointer_into_string = important_string;
139139
}
140140
```
141141
142-
## snake\_case\_ for private class fields
142+
### snake\_case\_ for private class fields
143143
144144
```c++
145145
class Foo {
@@ -148,7 +148,7 @@ class Foo {
148148
};
149149
```
150150

151-
## snake\_case\_ for C-like structs
151+
### snake\_case\_ for C-like structs
152152
For plain C-like structs snake_case can be used.
153153

154154
```c++
@@ -157,7 +157,7 @@ struct foo_bar {
157157
}
158158
```
159159
160-
## Space after `template`
160+
### Space after `template`
161161
162162
```c++
163163
template <typename T>
@@ -167,16 +167,16 @@ class FancyContainer {
167167
```
168168
## Memory Management
169169

170-
## Memory allocation
170+
### Memory allocation
171171

172172
- `Malloc()`, `Calloc()`, etc. from `util.h` abort in Out-of-Memory situations
173173
- `UncheckedMalloc()`, etc. return `nullptr` in OOM situations
174174

175-
## Use `nullptr` instead of `NULL` or `0`
175+
### Use `nullptr` instead of `NULL` or `0`
176176

177177
What it says in the title.
178178

179-
## Ownership and Smart Pointers
179+
### Ownership and Smart Pointers
180180

181181
"Smart" pointers are classes that act like pointers, e.g.
182182
by overloading the `*` and `->` operators. Some smart pointer types can be
@@ -202,14 +202,14 @@ Never use `std::auto_ptr`. Instead, use `std::unique_ptr`.
202202
203203
## Others
204204
205-
## Type casting
205+
### Type casting
206206
207207
- Always avoid C-style casts (`(type)value`)
208208
- `dynamic_cast` does not work because RTTI is not enabled
209209
- Use `static_cast` for casting whenever it works
210210
- `reinterpret_cast` is okay if `static_cast` is not appropriate
211211
212-
## Do not include `*.h` if `*-inl.h` has already been included
212+
### Do not include `*.h` if `*-inl.h` has already been included
213213
214214
Do
215215
@@ -224,7 +224,7 @@ instead of
224224
#include "util-inl.h"
225225
```
226226

227-
## Avoid throwing JavaScript errors in C++
227+
### Avoid throwing JavaScript errors in C++
228228

229229
When there is a need to throw errors from a C++ binding method, try to
230230
return the data necessary for constructing the errors to JavaScript,
@@ -278,7 +278,7 @@ exports.foo = function(str) {
278278
};
279279
```
280280

281-
### Avoid throwing JavaScript errors in nested C++ methods
281+
#### Avoid throwing JavaScript errors in nested C++ methods
282282

283283
When you have to throw the errors from C++, try to do it at the top level and
284284
not inside of nested calls.

0 commit comments

Comments
 (0)