/ .clang-format
.clang-format
1 # SPDX-License-Identifier: GPL-2.0-only 2 # 3 # clang-format configuration file. Intended for clang-format >= 16. 4 # 5 # For more information, see: 6 # 7 # https://clang.llvm.org/docs/ClangFormat.html 8 # https://clang.llvm.org/docs/ClangFormatStyleOptions.html 9 # https://clang-format-configurator.site/ 10 # 11 12 --- 13 Language: Cpp 14 AccessModifierOffset: -4 15 AlignAfterOpenBracket: Align 16 AlignArrayOfStructures: Left 17 AlignConsecutiveAssignments: 18 Enabled: false 19 AcrossEmptyLines: false 20 AcrossComments: true 21 AlignCompound: false 22 PadOperators: true 23 AlignConsecutiveBitFields: 24 Enabled: true 25 AcrossEmptyLines: false 26 AcrossComments: false 27 AlignCompound: false 28 PadOperators: true 29 AlignConsecutiveDeclarations: 30 Enabled: false 31 AcrossEmptyLines: false 32 AcrossComments: false 33 AlignCompound: false 34 PadOperators: true 35 AlignConsecutiveMacros: 36 Enabled: true 37 AcrossEmptyLines: false 38 AcrossComments: false 39 AlignCompound: false 40 PadOperators: true 41 AlignEscapedNewlines: Left 42 AlignOperands: Align 43 AlignTrailingComments: 44 Kind: Always 45 OverEmptyLines: 0 46 AllowAllArgumentsOnNextLine: true 47 AllowAllParametersOfDeclarationOnNextLine: false 48 AllowShortBlocksOnASingleLine: Never 49 AllowShortCaseLabelsOnASingleLine: false 50 AllowShortEnumsOnASingleLine: true 51 AllowShortFunctionsOnASingleLine: None 52 AllowShortIfStatementsOnASingleLine: Never 53 AllowShortLambdasOnASingleLine: All 54 AllowShortLoopsOnASingleLine: false 55 AlwaysBreakAfterDefinitionReturnType: None 56 AlwaysBreakAfterReturnType: None 57 AlwaysBreakBeforeMultilineStrings: false 58 AlwaysBreakTemplateDeclarations: MultiLine 59 60 # git grep '^#define [^[:space:]]*__.*[^[:space:]]*__attribute__' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*__[^([:space:]]*\).*$| - '\1'|" | LC_ALL=C sort -u 61 AttributeMacros: 62 - '__aligned' 63 - '__always_inline' 64 - '__always_unused' 65 - '__cpu_driver' 66 - '__fallthrough' 67 - '__maybe_unused' 68 - '__must_check' 69 - '__noreturn' 70 - '__packed' 71 - '__pci_driver' 72 - '__printf' 73 - '__weak' 74 BinPackArguments: true 75 BinPackParameters: true 76 BitFieldColonSpacing: Both 77 BraceWrapping: 78 AfterCaseLabel: false 79 AfterClass: false 80 AfterControlStatement: Never 81 AfterEnum: false 82 AfterExternBlock: false 83 AfterFunction: true 84 AfterNamespace: true 85 AfterObjCDeclaration: false 86 AfterStruct: false 87 AfterUnion: false 88 BeforeCatch: false 89 BeforeElse: false 90 BeforeLambdaBody: false 91 BeforeWhile: false 92 IndentBraces: false 93 SplitEmptyFunction: true 94 SplitEmptyRecord: true 95 SplitEmptyNamespace: true 96 BreakAfterAttributes: Never 97 BreakAfterJavaFieldAnnotations: false 98 BreakArrays: false 99 BreakBeforeBinaryOperators: None 100 BreakBeforeConceptDeclarations: Always 101 BreakBeforeBraces: Custom 102 BreakBeforeInlineASMColon: OnlyMultiline 103 BreakBeforeTernaryOperators: false 104 BreakConstructorInitializers: AfterColon 105 BreakInheritanceList: AfterColon 106 BreakStringLiterals: false 107 ColumnLimit: 96 108 CommentPragmas: '^ IWYU pragma:' 109 CompactNamespaces: false 110 ConstructorInitializerIndentWidth: 8 111 ContinuationIndentWidth: 8 112 Cpp11BracedListStyle: true 113 DerivePointerAlignment: false 114 DisableFormat: false 115 EmptyLineAfterAccessModifier: Never 116 EmptyLineBeforeAccessModifier: LogicalBlock 117 ExperimentalAutoDetectBinPacking: false 118 FixNamespaceComments: false 119 120 # git grep '^#define [^[:space:]]*for_each[^[:space:]]*(' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$| - '\1'|" | LC_ALL=C sort -u 121 ForEachMacros: 122 - 'list_for_each' 123 124 # git grep -i '^#define \+if[^[:space:]]*(' | grep -v "vendorcode\|payloads\|util" | sed "s|.*:||;s|^#define \([^[:space:]]*if[^[:space:]]*\)(.*$| - '\1'|I" | grep -v IFIX | LC_ALL=C sort -u 125 IfMacros: 126 - 'IF_CHANNEL_POPULATED' 127 - 'IF_DIMM_POPULATED' 128 - 'IF_RANK_POPULATED' 129 - 'IfBit0' 130 IncludeBlocks: Preserve 131 IncludeIsMainSourceRegex: '' 132 IndentAccessModifiers: false 133 IndentCaseBlocks: false 134 IndentCaseLabels: false 135 IndentExternBlock: AfterExternBlock 136 IndentGotoLabels: false 137 IndentPPDirectives: None 138 IndentRequiresClause: true 139 IndentWidth: 8 140 IndentWrappedFunctionNames: false 141 InsertBraces: false 142 InsertNewlineAtEOF: true 143 InsertTrailingCommas: None 144 IntegerLiteralSeparator: 145 Binary: 0 146 BinaryMinDigits: 0 147 Decimal: 0 148 DecimalMinDigits: 0 149 Hex: 0 150 HexMinDigits: 0 151 JavaScriptQuotes: Leave 152 JavaScriptWrapImports: true 153 KeepEmptyLinesAtTheStartOfBlocks: false 154 LambdaBodyIndentation: Signature 155 LineEnding: LF 156 MacroBlockBegin: '' 157 MacroBlockEnd: '' 158 MaxEmptyLinesToKeep: 1 159 NamespaceIndentation: None 160 ObjCBinPackProtocolList: Auto 161 ObjCBlockIndentWidth: 8 162 ObjCBreakBeforeNestedBlockParam: true 163 ObjCSpaceAfterProperty: true 164 ObjCSpaceBeforeProtocolList: true 165 PackConstructorInitializers: BinPack 166 PenaltyBreakAssignment: 10 167 PenaltyBreakBeforeFirstCallParameter: 30 168 PenaltyBreakComment: 10 169 PenaltyBreakFirstLessLess: 0 170 PenaltyBreakOpenParenthesis: 0 171 PenaltyBreakString: 10 172 PenaltyBreakTemplateDeclaration: 10 173 PenaltyExcessCharacter: 100 174 PenaltyIndentedWhitespace: 0 175 PenaltyReturnTypeOnItsOwnLine: 60 176 PointerAlignment: Right 177 PPIndentWidth: -1 178 QualifierAlignment: Left 179 ReferenceAlignment: Pointer 180 ReflowComments: false 181 RemoveBracesLLVM: false 182 RemoveSemicolon: false 183 RequiresClausePosition: OwnLine 184 RequiresExpressionIndentation: OuterScope 185 SeparateDefinitionBlocks: Leave 186 ShortNamespaceLines: 1 187 SortIncludes: Never 188 SortJavaStaticImport: Before 189 SortUsingDeclarations: Never 190 SpaceAfterCStyleCast: false 191 SpaceAfterLogicalNot: false 192 SpaceAfterTemplateKeyword: true 193 SpaceAroundPointerQualifiers: Default 194 SpaceBeforeAssignmentOperators: true 195 SpaceBeforeCaseColon: false 196 SpaceBeforeCpp11BracedList: false 197 SpaceBeforeCtorInitializerColon: true 198 SpaceBeforeInheritanceColon: true 199 SpaceBeforeParens: ControlStatementsExceptControlMacros 200 SpaceBeforeParensOptions: 201 AfterControlStatements: true 202 AfterForeachMacros: false 203 AfterFunctionDefinitionName: false 204 AfterFunctionDeclarationName: false 205 AfterIfMacros: false 206 AfterOverloadedOperator: false 207 AfterRequiresInClause: false 208 AfterRequiresInExpression: false 209 BeforeNonEmptyParentheses: false 210 SpaceBeforeRangeBasedForLoopColon: true 211 SpaceBeforeSquareBrackets: false 212 SpaceInEmptyBlock: false 213 SpaceInEmptyParentheses: false 214 SpacesBeforeTrailingComments: 1 215 SpacesInAngles: Never 216 SpacesInConditionalStatement: false 217 SpacesInContainerLiterals: false 218 SpacesInCStyleCastParentheses: false 219 SpacesInLineCommentPrefix: 220 Minimum: 1 221 Maximum: 1 222 SpacesInParentheses: false 223 SpacesInSquareBrackets: false 224 Standard: c++17 225 TabWidth: 8 226 UseTab: ForContinuationAndIndentation 227 ... 228