|
| 1 | +## This config file is only relevant for clang-format version 19.1.7 |
| 2 | +## |
| 3 | +## Examples of each format style can be found on the in the clang-format documentation |
| 4 | +## See: https://clang.llvm.org/docs/ClangFormatStyleOptions.html for details of each option |
| 5 | +## |
| 6 | +## The clang-format binaries can be downloaded as part of the clang binary distributions |
| 7 | +## from https://releases.llvm.org/download.html |
| 8 | +## |
| 9 | +## Use the script Utilities/Maintenance/clang-format.bash to faciliate |
| 10 | +## maintaining a consistent code style. |
| 11 | +## |
| 12 | +## EXAMPLE apply code style enforcement before commit: |
| 13 | +# Utilities/Maintenance/clang-format.bash --clang ${PATH_TO_CLANG_FORMAT_19.1.7} --modified |
| 14 | +## EXAMPLE apply code style enforcement after commit: |
| 15 | +# Utilities/Maintenance/clang-format.bash --clang ${PATH_TO_CLANG_FORMAT_19.1.7} --last |
1 | 16 | ---
|
| 17 | +# This configuration requires clang-format version 19.1.7 exactly. |
2 | 18 | Language: Cpp
|
3 |
| -BasedOnStyle: Mozilla |
4 | 19 | AccessModifierOffset: -2
|
5 | 20 | AlignAfterOpenBracket: Align
|
6 |
| -AlignConsecutiveAssignments: false |
7 |
| -AlignConsecutiveDeclarations: true |
8 |
| -AlignEscapedNewlinesLeft: true |
9 |
| -AlignOperands: true |
10 |
| -AlignTrailingComments: true |
| 21 | +AlignArrayOfStructures: None |
| 22 | +AlignConsecutiveAssignments: |
| 23 | + Enabled: false |
| 24 | + AcrossEmptyLines: false |
| 25 | + AcrossComments: false |
| 26 | + AlignCompound: false |
| 27 | + AlignFunctionPointers: false |
| 28 | + PadOperators: true |
| 29 | +AlignConsecutiveBitFields: |
| 30 | + Enabled: false |
| 31 | + AcrossEmptyLines: false |
| 32 | + AcrossComments: false |
| 33 | + AlignCompound: false |
| 34 | + AlignFunctionPointers: false |
| 35 | + PadOperators: false |
| 36 | +AlignConsecutiveDeclarations: |
| 37 | + Enabled: true |
| 38 | + AcrossEmptyLines: false |
| 39 | + AcrossComments: false |
| 40 | + AlignCompound: false |
| 41 | + AlignFunctionPointers: false |
| 42 | + PadOperators: true |
| 43 | +AlignConsecutiveMacros: |
| 44 | + Enabled: false |
| 45 | + AcrossEmptyLines: false |
| 46 | + AcrossComments: false |
| 47 | + AlignCompound: false |
| 48 | + AlignFunctionPointers: false |
| 49 | + PadOperators: false |
| 50 | +AlignConsecutiveShortCaseStatements: |
| 51 | + Enabled: false |
| 52 | + AcrossEmptyLines: false |
| 53 | + AcrossComments: false |
| 54 | + AlignCaseArrows: false |
| 55 | + AlignCaseColons: false |
| 56 | +AlignConsecutiveTableGenBreakingDAGArgColons: |
| 57 | + Enabled: false |
| 58 | + AcrossEmptyLines: false |
| 59 | + AcrossComments: false |
| 60 | + AlignCompound: false |
| 61 | + AlignFunctionPointers: false |
| 62 | + PadOperators: false |
| 63 | +AlignConsecutiveTableGenCondOperatorColons: |
| 64 | + Enabled: false |
| 65 | + AcrossEmptyLines: false |
| 66 | + AcrossComments: false |
| 67 | + AlignCompound: false |
| 68 | + AlignFunctionPointers: false |
| 69 | + PadOperators: false |
| 70 | +AlignConsecutiveTableGenDefinitionColons: |
| 71 | + Enabled: false |
| 72 | + AcrossEmptyLines: false |
| 73 | + AcrossComments: false |
| 74 | + AlignCompound: false |
| 75 | + AlignFunctionPointers: false |
| 76 | + PadOperators: false |
| 77 | +AlignEscapedNewlines: Left |
| 78 | +AlignOperands: Align |
| 79 | +AlignTrailingComments: |
| 80 | + Kind: Always |
| 81 | + OverEmptyLines: 0 |
| 82 | +AllowAllArgumentsOnNextLine: true |
11 | 83 | AllowAllParametersOfDeclarationOnNextLine: false
|
12 |
| -AllowShortBlocksOnASingleLine: false |
| 84 | +AllowBreakBeforeNoexceptSpecifier: Never |
| 85 | +AllowShortBlocksOnASingleLine: Never |
| 86 | +AllowShortCaseExpressionOnASingleLine: true |
13 | 87 | AllowShortCaseLabelsOnASingleLine: false
|
14 |
| -AllowShortFunctionsOnASingleLine: Inline |
15 |
| -AllowShortIfStatementsOnASingleLine: false |
| 88 | +AllowShortCompoundRequirementOnASingleLine: true |
| 89 | +AllowShortEnumsOnASingleLine: true |
| 90 | +#AllowShortFunctionsOnASingleLine: Inline Only merge functions defined inside a class. Implies empty. |
| 91 | +#AllowShortFunctionsOnASingleLine: None (in configuration: None) Never merge functions into a single line. |
| 92 | +AllowShortFunctionsOnASingleLine: All |
| 93 | +AllowShortIfStatementsOnASingleLine: Never |
| 94 | +AllowShortLambdasOnASingleLine: All |
16 | 95 | AllowShortLoopsOnASingleLine: false
|
17 |
| -AlwaysBreakAfterReturnType: All |
18 |
| -AlwaysBreakBeforeMultilineStrings: true |
19 |
| -AlwaysBreakTemplateDeclarations: true |
| 96 | +AlwaysBreakAfterDefinitionReturnType: None |
| 97 | +AlwaysBreakBeforeMultilineStrings: false |
| 98 | +AttributeMacros: |
| 99 | + - __capability |
20 | 100 | BinPackArguments: false
|
21 |
| -BinPackParameters: true |
| 101 | +BinPackParameters: false |
| 102 | +BitFieldColonSpacing: Both |
22 | 103 | BraceWrapping:
|
| 104 | + AfterCaseLabel: true |
23 | 105 | AfterClass: true
|
24 |
| - AfterControlStatement: true |
| 106 | + AfterControlStatement: Always |
25 | 107 | AfterEnum: true
|
| 108 | + AfterExternBlock: true |
26 | 109 | AfterFunction: true
|
27 | 110 | AfterNamespace: true
|
28 | 111 | AfterObjCDeclaration: true
|
29 | 112 | AfterStruct: true
|
30 | 113 | AfterUnion: true
|
31 | 114 | BeforeCatch: true
|
32 | 115 | BeforeElse: true
|
33 |
| - IndentBraces: true |
| 116 | + BeforeLambdaBody: false |
| 117 | + BeforeWhile: false |
| 118 | + IndentBraces: false |
| 119 | + SplitEmptyFunction: false |
| 120 | + SplitEmptyRecord: false |
| 121 | + SplitEmptyNamespace: false |
| 122 | +BreakAdjacentStringLiterals: true |
| 123 | +BreakAfterAttributes: Leave |
| 124 | +BreakAfterJavaFieldAnnotations: false |
| 125 | +BreakAfterReturnType: All |
| 126 | +BreakArrays: true |
34 | 127 | BreakBeforeBinaryOperators: None
|
35 |
| -BreakBeforeBraces: GNU |
| 128 | +BreakBeforeConceptDeclarations: Always |
| 129 | +BreakBeforeBraces: Custom |
| 130 | +BreakBeforeInlineASMColon: OnlyMultiline |
36 | 131 | BreakBeforeTernaryOperators: true
|
37 |
| -BreakConstructorInitializersBeforeComma: true |
38 |
| -BreakAfterJavaFieldAnnotations: false |
| 132 | +BreakConstructorInitializers: BeforeComma |
| 133 | +BreakFunctionDefinitionParameters: false |
| 134 | +BreakInheritanceList: BeforeComma |
39 | 135 | BreakStringLiterals: true
|
40 |
| -ColumnLimit: 200 |
41 |
| -# ColumnLimit: 80 |
| 136 | +BreakTemplateDeclarations: Yes |
| 137 | +## The following line allows larger lines in non-documentation code |
| 138 | +ColumnLimit: 120 |
42 | 139 | CommentPragmas: '^ IWYU pragma:'
|
43 |
| -ConstructorInitializerAllOnOneLineOrOnePerLine: false |
| 140 | +CompactNamespaces: false |
44 | 141 | ConstructorInitializerIndentWidth: 2
|
45 | 142 | ContinuationIndentWidth: 2
|
46 | 143 | Cpp11BracedListStyle: false
|
47 | 144 | DerivePointerAlignment: false
|
48 | 145 | DisableFormat: false
|
| 146 | +EmptyLineAfterAccessModifier: Never |
| 147 | +EmptyLineBeforeAccessModifier: LogicalBlock |
49 | 148 | ExperimentalAutoDetectBinPacking: false
|
50 |
| -ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH ] |
| 149 | +FixNamespaceComments: true |
| 150 | +ForEachMacros: |
| 151 | + - foreach |
| 152 | + - Q_FOREACH |
| 153 | + - BOOST_FOREACH |
| 154 | +IfMacros: |
| 155 | + - KJ_IF_MAYBE |
| 156 | +IncludeBlocks: Preserve |
51 | 157 | IncludeCategories:
|
52 | 158 | - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
|
53 | 159 | Priority: 2
|
54 |
| - - Regex: '^(<|"(gtest|isl|json)/)' |
| 160 | + SortPriority: 0 |
| 161 | + CaseSensitive: false |
| 162 | + - Regex: '^(<|"(gtest|gmock|isl|json)/)' |
55 | 163 | Priority: 3
|
| 164 | + SortPriority: 0 |
| 165 | + CaseSensitive: false |
56 | 166 | - Regex: '.*'
|
57 | 167 | Priority: 1
|
58 |
| -IncludeIsMainRegex: '$' |
| 168 | + SortPriority: 0 |
| 169 | + CaseSensitive: false |
| 170 | +IncludeIsMainRegex: '(Test)?$' |
| 171 | +IncludeIsMainSourceRegex: '' |
| 172 | +IndentAccessModifiers: false |
| 173 | +IndentCaseBlocks: false |
59 | 174 | IndentCaseLabels: true
|
| 175 | +IndentExternBlock: AfterExternBlock |
| 176 | +IndentGotoLabels: true |
| 177 | +IndentPPDirectives: AfterHash |
| 178 | +IndentRequiresClause: true |
60 | 179 | IndentWidth: 2
|
61 | 180 | IndentWrappedFunctionNames: false
|
| 181 | +InsertBraces: false |
| 182 | +InsertNewlineAtEOF: false |
| 183 | +InsertTrailingCommas: None |
| 184 | +IntegerLiteralSeparator: |
| 185 | + Binary: 0 |
| 186 | + BinaryMinDigits: 0 |
| 187 | + Decimal: 0 |
| 188 | + DecimalMinDigits: 0 |
| 189 | + Hex: 0 |
| 190 | + HexMinDigits: 0 |
62 | 191 | JavaScriptQuotes: Leave
|
63 | 192 | JavaScriptWrapImports: true
|
64 |
| -KeepEmptyLinesAtTheStartOfBlocks: false |
| 193 | +KeepEmptyLines: |
| 194 | + AtEndOfFile: false |
| 195 | + AtStartOfBlock: true |
| 196 | + AtStartOfFile: true |
| 197 | +LambdaBodyIndentation: Signature |
| 198 | +LineEnding: DeriveLF |
65 | 199 | MacroBlockBegin: ''
|
66 | 200 | MacroBlockEnd: ''
|
| 201 | +MainIncludeChar: Quote |
67 | 202 | MaxEmptyLinesToKeep: 2
|
68 | 203 | NamespaceIndentation: None
|
| 204 | +ObjCBinPackProtocolList: Auto |
69 | 205 | ObjCBlockIndentWidth: 2
|
| 206 | +ObjCBreakBeforeNestedBlockParam: true |
70 | 207 | ObjCSpaceAfterProperty: true
|
71 | 208 | ObjCSpaceBeforeProtocolList: false
|
| 209 | +PackConstructorInitializers: BinPack |
| 210 | +PenaltyBreakAssignment: 2 |
72 | 211 | PenaltyBreakBeforeFirstCallParameter: 19
|
73 | 212 | PenaltyBreakComment: 300
|
| 213 | +## The following line allows larger lines in non-documentation code |
74 | 214 | PenaltyBreakFirstLessLess: 120
|
| 215 | +PenaltyBreakOpenParenthesis: 0 |
| 216 | +PenaltyBreakScopeResolution: 500 |
75 | 217 | PenaltyBreakString: 1000
|
| 218 | +PenaltyBreakTemplateDeclaration: 10 |
76 | 219 | PenaltyExcessCharacter: 1000000
|
77 |
| -PenaltyReturnTypeOnItsOwnLine: 0 |
78 |
| -PointerAlignment: Left |
| 220 | +PenaltyIndentedWhitespace: 0 |
| 221 | +PenaltyReturnTypeOnItsOwnLine: 200 |
| 222 | +PointerAlignment: Middle |
| 223 | +PPIndentWidth: -1 |
| 224 | +QualifierAlignment: Custom |
| 225 | +QualifierOrder: |
| 226 | + - friend |
| 227 | + - static |
| 228 | + - inline |
| 229 | + - constexpr |
| 230 | + - const |
| 231 | + - type |
| 232 | +ReferenceAlignment: Pointer |
79 | 233 | ReflowComments: true
|
80 |
| -SortIncludes: true |
| 234 | +RemoveBracesLLVM: false |
| 235 | +RemoveParentheses: Leave |
| 236 | +RemoveSemicolon: false |
| 237 | +RequiresClausePosition: OwnLine |
| 238 | +RequiresExpressionIndentation: OuterScope |
| 239 | +SeparateDefinitionBlocks: Leave |
| 240 | +ShortNamespaceLines: 1 |
| 241 | +SkipMacroDefinitionBody: false |
| 242 | +# We may want to sort the includes as a separate pass |
| 243 | +SortIncludes: Never |
| 244 | +SortJavaStaticImport: Before |
| 245 | +# We may want to revisit this later |
| 246 | +SortUsingDeclarations: Never |
81 | 247 | SpaceAfterCStyleCast: false
|
| 248 | +SpaceAfterLogicalNot: false |
| 249 | +SpaceAfterTemplateKeyword: true |
| 250 | +SpaceAroundPointerQualifiers: Default |
82 | 251 | SpaceBeforeAssignmentOperators: true
|
| 252 | +SpaceBeforeCaseColon: false |
| 253 | +SpaceBeforeCpp11BracedList: false |
| 254 | +SpaceBeforeCtorInitializerColon: true |
| 255 | +SpaceBeforeInheritanceColon: true |
| 256 | +SpaceBeforeJsonColon: false |
83 | 257 | SpaceBeforeParens: ControlStatements
|
84 |
| -SpaceInEmptyParentheses: false |
| 258 | +SpaceBeforeParensOptions: |
| 259 | + AfterControlStatements: true |
| 260 | + AfterForeachMacros: true |
| 261 | + AfterFunctionDefinitionName: false |
| 262 | + AfterFunctionDeclarationName: false |
| 263 | + AfterIfMacros: true |
| 264 | + AfterOverloadedOperator: false |
| 265 | + AfterPlacementOperator: true |
| 266 | + AfterRequiresInClause: false |
| 267 | + AfterRequiresInExpression: false |
| 268 | + BeforeNonEmptyParentheses: false |
| 269 | +SpaceBeforeRangeBasedForLoopColon: true |
| 270 | +SpaceBeforeSquareBrackets: false |
| 271 | +SpaceInEmptyBlock: false |
85 | 272 | SpacesBeforeTrailingComments: 1
|
86 |
| -SpacesInAngles: true |
87 |
| -SpacesInCStyleCastParentheses: false |
88 |
| -SpacesInContainerLiterals: true |
89 |
| -SpacesInParentheses: true |
| 273 | +SpacesInAngles: Never |
| 274 | +SpacesInContainerLiterals: false |
| 275 | +SpacesInLineCommentPrefix: |
| 276 | + Minimum: 1 |
| 277 | + Maximum: -1 |
| 278 | +SpacesInParens: Never |
| 279 | +SpacesInParensOptions: |
| 280 | + ExceptDoubleParentheses: false |
| 281 | + InCStyleCasts: false |
| 282 | + InConditionalStatements: false |
| 283 | + InEmptyParentheses: false |
| 284 | + Other: false |
90 | 285 | SpacesInSquareBrackets: false
|
91 |
| -Standard: Cpp03 |
| 286 | +Standard: Latest |
| 287 | +StatementAttributeLikeMacros: |
| 288 | + - Q_EMIT |
| 289 | +StatementMacros: |
| 290 | + - Q_UNUSED |
| 291 | + - QT_REQUIRE_VERSION |
| 292 | + - ITK_GCC_PRAGMA_PUSH |
| 293 | + - ITK_GCC_PRAGMA_POP |
| 294 | + - ITK_GCC_SUPPRESS_Wfloat_equal |
| 295 | + - ITK_GCC_SUPPRESS_Wformat_nonliteral |
| 296 | + - ITK_GCC_SUPPRESS_Warray_bounds |
| 297 | + - ITK_CLANG_PRAGMA_PUSH |
| 298 | + - ITK_CLANG_PRAGMA_POP |
| 299 | + - ITK_CLANG_SUPPRESS_Wzero_as_null_pointer_constant |
| 300 | + - CLANG_PRAGMA_PUSH |
| 301 | + - CLANG_PRAGMA_POP |
| 302 | + - CLANG_SUPPRESS_Wfloat_equal |
| 303 | + - INTEL_PRAGMA_WARN_PUSH |
| 304 | + - INTEL_PRAGMA_WARN_POP |
| 305 | + - INTEL_SUPPRESS_warning_1292 |
| 306 | + - itkTemplateFloatingToIntegerMacro |
| 307 | + - itkLegacyMacro |
| 308 | +TableGenBreakInsideDAGArg: DontBreak |
92 | 309 | TabWidth: 2
|
93 | 310 | UseTab: Never
|
| 311 | +VerilogBreakBetweenInstancePorts: true |
| 312 | +WhitespaceSensitiveMacros: |
| 313 | + - BOOST_PP_STRINGIZE |
| 314 | + - CF_SWIFT_NAME |
| 315 | + - NS_SWIFT_NAME |
| 316 | + - PP_STRINGIZE |
| 317 | + - STRINGIZE |
94 | 318 | ...
|
0 commit comments