BasedOnStyle: WebKit

UseTab: Never
IndentWidth: 4
ColumnLimit: 120
PointerAlignment: Left

AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: false
AlwaysBreakTemplateDeclarations: true
AlignAfterOpenBracket: true
AlignOperands: true
AlignTrailingComments: true
BinPackArguments: false
BinPackParameters: false
BreakBeforeBinaryOperators: None
BreakConstructorInitializersBeforeComma: true
ConstructorInitializerAllOnOneLineOrOnePerLine: true
Cpp11BracedListStyle: true
IndentCaseLabels: true
KeepEmptyLinesAtTheStartOfBlocks: false
NamespaceIndentation: All
ForEachMacros: [TEST_CASE, SECTION]
PenaltyReturnTypeOnItsOwnLine: 1000
SpaceAfterTemplateKeyword: false
SpaceBeforeCpp11BracedList: false
DeriveLineEnding: false
UseCRLF: false

BreakBeforeBraces: Custom
BraceWrapping:
  AfterCaseLabel:  true
  AfterClass:      true
  AfterControlStatement: Always
  AfterEnum:       true
  AfterFunction:   true
  AfterNamespace:  true
  AfterObjCDeclaration: true
  AfterStruct:     true
  AfterUnion:      true
  AfterExternBlock: true
  BeforeCatch:     true
  BeforeElse:      true
  BeforeLambdaBody: false
  BeforeWhile:     false
  IndentBraces:    false
  SplitEmptyFunction: true
  SplitEmptyRecord: true
  SplitEmptyNamespace: true

IncludeBlocks: Regroup
IncludeCategories:
  - Regex: '^(<vcpkg/base/system-headers\.h>|"pch\.h")$'
    Priority: -1
  - Regex: '^<catch2/catch\.hpp>$'
    Priority: 1
  - Regex: '^<vcpkg-test/util\.h>$'
    Priority: 1
  - Regex: '^<vcpkg/base/fwd/.*\.h>$'
    Priority: 2
  - Regex: '^<vcpkg/fwd/.*\.h>$'
    Priority: 3
  - Regex: '^<vcpkg/base/.*\.h>$'
    Priority: 4
  - Regex: '^<vcpkg/.*\.h>$'
    Priority: 5
  - Regex: '^(<Softpub\.h>)$'
    Priority: 8
  - Regex: '^<[a-z0-9_]*\.h>$'
    Priority: 6
  - Regex: '^<[a-z0-9_]*>$' # C++ standard library
    Priority: 7

---

Language: Cpp
Standard: c++17
