You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dvmhost/.clang-format

123 lines
3.4 KiB

---
# dvmhost project-owned C and C++ style.
#
# This is intentionally conservative. The repository contains hand-formatted
# protocol code plus third-party, generated, and platform SDK sources. Do not
# run clang-format recursively over those trees; see AGENTS.md.
BasedOnStyle: LLVM
Language: Cpp
Standard: c++14
UseTab: Never
TabWidth: 4
IndentWidth: 4
ContinuationIndentWidth: 4
ConstructorInitializerIndentWidth: 4
AccessModifierOffset: -4
IndentAccessModifiers: false
NamespaceIndentation: All
IndentCaseLabels: false
IndentCaseBlocks: false
IndentGotoLabels: false
IndentPPDirectives: None
# Preserve the project's mixed brace convention: namespaces and function
# definitions use Allman braces; records and control statements use attached
# braces; case-local scopes put the brace on the following line.
BreakBeforeBraces: Custom
BraceWrapping:
AfterCaseLabel: true
AfterClass: false
AfterControlStatement: Never
AfterEnum: false
AfterFunction: true
AfterNamespace: true
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: true
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
SpaceBeforeParens: ControlStatements
SpaceBeforeAssignmentOperators: true
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeRangeBasedForLoopColon: true
SpaceBeforeCpp11BracedList: true
SpaceAfterTemplateKeyword: false
SpaceAfterCStyleCast: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpacesInAngles: Never
PointerAlignment: Left
ReferenceAlignment: Pointer
DerivePointerAlignment: false
AlignAfterOpenBracket: DontAlign
AlignOperands: DontAlign
AlignEscapedNewlines: Right
AlignTrailingComments: true
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros: false
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AllowShortLambdasOnASingleLine: Empty
BinPackArguments: true
BinPackParameters: true
ExperimentalAutoDetectBinPacking: false
BreakConstructorInitializers: AfterColon
PackConstructorInitializers: BinPack
AlwaysBreakAfterReturnType: None
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakTemplateDeclarations: MultiLine
BreakBeforeBinaryOperators: None
BreakBeforeTernaryOperators: true
# Existing files intentionally contain long log strings, protocol expressions,
# and manually selected wrapping. A zero limit prevents clang-format from
# reflowing them merely to satisfy an arbitrary width.
ColumnLimit: 0
MaxEmptyLinesToKeep: 1
KeepEmptyLinesAtTheStartOfBlocks: true
ReflowComments: false
CommentPragmas: '^ IWYU pragma:'
# Include and using order carries local grouping meaning in this repository.
SortIncludes: false
IncludeBlocks: Preserve
SortUsingDeclarations: false
FixNamespaceComments: false
# Catch2 and project assertion/logging macros should remain statement-like. This
# reduces clang-format's tendency to treat their following braces as functions.
StatementMacros:
- TEST_CASE
- TEST_CASE_METHOD
- SCENARIO
- SECTION
- REQUIRE
- REQUIRE_FALSE
- CHECK
- CHECK_FALSE
Cpp11BracedListStyle: false
CompactNamespaces: false
DeriveLineEnding: true
UseCRLF: false
DisableFormat: false
...

Powered by TurnKey Linux.