-
Notifications
You must be signed in to change notification settings - Fork 0
/
.clang-format
225 lines (223 loc) · 6.41 KB
/
.clang-format
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
Language: Cpp
AccessModifierOffset: -4
AlignAfterOpenBracket: 'Align'
AlignArrayOfStructures: 'None'
AlignConsecutiveAssignments: 'None'
AlignConsecutiveBitFields:
Enabled: true
AcrossEmptyLines: false
AcrossComments: true
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros:
Enabled: true
AcrossEmptyLines: false
AcrossComments: true
#AlignConsecutiveShortCaseStatements: # clang-format 18
# Enabled: true
# AcrossEmptyLines: false
# AcrossComments: true
AlignEscapedNewlines: 'Left'
AlignOperands: true
AlignTrailingComments:
Kind: 'Never'
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
#AllowBreakBeforeNoexceptSpecifier: 'OnlyWithParen' # clang-format 18
AllowShortBlocksOnASingleLine: 'Never'
AllowShortCaseLabelsOnASingleLine: false
#AllowShortCompoundRequirementOnASingleLine: true # clang-format 18
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: 'Inline'
AllowShortIfStatementsOnASingleLine: 'Never'
AllowShortLambdasOnASingleLine: 'All'
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: 'None' # deprecated
AlwaysBreakAfterReturnType: 'None'
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: 'Yes'
AttributeMacros: []
BinPackArguments: false
BinPackParameters: false
BitFieldColonSpacing: 'Both'
BreakBeforeBraces: Custom
BraceWrapping:
AfterCaseLabel: false
AfterClass: false
AfterControlStatement: 'Never'
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: false
#BracedInitializerIndentWidth: 1 # TODO, clang-format 18
#BreakAdjacentStringLiterals: true # clang-format 18
BreakAfterAttributes: 'Always'
BreakArrays: false
BreakBeforeBinaryOperators: 'None'
BreakBeforeBraces: 'Attach'
BreakBeforeConceptDeclarations: 'Always'
BreakBeforeInlineASMColon: 'OnlyMultiline'
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: 'AfterColon'
BreakInheritanceList: 'AfterColon'
BreakStringLiterals: true
ColumnLimit: 90 # TODO
CommentPragmas: '' # TODO
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false # deprecated
ConstructorInitializerIndentWidth: 2
ContinuationIndentWidth: 2
Cpp11BracedListStyle: true
#DeriveLineEnding: 'true' # deprecated
DerivePointerAlignment: false
DisableFormat: false
EmptyLineAfterAccessModifier: 'Never'
EmptyLineBeforeAccessModifier: 'LogicalBlock'
FixNamespaceComments: true
ForEachMacros: []
IfMacros: []
IncludeBlocks: Regroup
IncludeCategories:
- Regex: '^((<|")(gtest|gmock)/)'
Priority: 1
SortPriority: 1
CaseSensitive: false
- Regex: '^((<|")(boost)/)'
Priority: 2
SortPriority: 2
CaseSensitive: false
- Regex: '^<[:alnum:]+>$'
Priority: 3
SortPriority: 3
CaseSensitive: false
- Regex: '^<.*'
Priority: 4
SortPriority: 4
CaseSensitive: false
- Regex: '^".*'
Priority: 5
SortPriority: 5
CaseSensitive: false
IncludeIsMainRegex: ''
IncludeIsMainSourceRegex: '\.hpp$'
IndentAccessModifiers: false
IndentCaseLabels: false
IndentExternBlock: 'NoIndent'
IndentGotoLabels: false
IndentPPDirectives: AfterHash
IndentRequiresClause: true
IndentWidth: 4
IndentWrappedFunctionNames: true
InsertBraces: false # checked by clang-tidy readability-braces-around-statements
InsertNewlineAtEOF: true
InsertTrailingCommas: 'Wrapped'
IntegerLiteralSeparator:
Binary: 0
Decimal: 3
DecimalMinDigits: 5
Hex: -1
#KeepEmptyLinesAtEOF: false # clang-format 17
KeepEmptyLinesAtTheStartOfBlocks: false
LambdaBodyIndentation: 'Signature'
LineEnding: 'DeriveLF'
MacroBlockBegin: ''
MacroBlockEnd: ''
#Macros: [] # clang-format 17
MaxEmptyLinesToKeep: 1
NamespaceIndentation: 'None'
NamespaceMacros: []
PPIndentWidth: -1 # use IndentWidth
PackConstructorInitializers: 'CurrentLine'
PointerAlignment: 'Left'
QualifierAlignment: 'Custom'
QualifierOrder: [
'friend',
'static',
'constexpr',
'inline',
'volatile',
'restrict',
'const',
'type',
]
RawStringFormats: []
ReferenceAlignment: 'Left'
ReflowComments: true
RemoveBracesLLVM: false
#RemoveParentheses: 'ReturnStatement' # clang-format 17
RemoveSemicolon: true
RequiresClausePosition: 'WithPreceding'
RequiresExpressionIndentation: 'OuterScope'
SeparateDefinitionBlocks: 'Always'
ShortNamespaceLines: 0
SortIncludes: true
SortUsingDeclarations: 'LexicographicNumeric'
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: false
SpaceAroundPointerQualifiers: 'Default'
SpaceBeforeCaseColon: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: 'Custom'
SpaceBeforeParensOptions:
AfterControlStatements: true
AfterForeachMacros: true
AfterFunctionDeclarationName: false
AfterFunctionDefinitionName: false
AfterIfMacros: true
AfterOverloadedOperator: false
# AfterPlacementOperator: 'Never' # clang-format 18
AfterRequiresInClause: false
AfterRequiresInExpression: false
BeforeNonEmptyParentheses: false
SpaceBeforeRangeBasedForLoopColon: true
SpaceBeforeSquareBrackets: false
SpaceInEmptyBlock: true
#SpaceInEmptyParentheses: false # deprecated
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
#SpacesInCStyleCastParentheses: false # deprecated
#SpacesInConditionalStatement: false # deprecated
SpacesInContainerLiterals: false
SpacesInLineCommentPrefix:
Minimum: 1
Maximum: 1
#SpacesInParens: Custom # clang-format 17
#SpacesInParensOptions:
# InConditionalStatements: false
# InCStyleCasts: false
# InEmptyParentheses: false
# Other: false
SpacesInParentheses: false # deprecated (SpacesInParens)
SpacesInSquareBrackets: false
Standard: 'Latest'
StatementAttributeLikeMacros: []
StatementMacros: []
TabWidth: 4
#TypeNames: [] # clang-format 17
TypenameMacros: []
#UseCRLF: false # deprecated (LineEnding)
UseTab: 'Never'
WhitespaceSensitiveMacros: []
PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 10
PenaltyBreakComment: 50
PenaltyBreakFirstLessLess: 100
PenaltyBreakString: 10
PenaltyBreakTemplateDeclaration: 0
PenaltyExcessCharacter: 100
PenaltyIndentedWhitespace: 50
PenaltyReturnTypeOnItsOwnLine: 100