---
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: true
AlignConsecutiveDeclarations: true
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: true
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
BasedOnStyle: Microsoft
Cpp11BracedListStyle: 'true'
NamespaceIndentation: All
UseTab: Never
IndentWidth: 4
PointerAlignment: Left

# From https://stackoverflow.com/a/55794142
SortIncludes: true
IncludeBlocks: Regroup
IncludeCategories:
  # Headers in <> without extension.
  - Regex: '<([A-Za-z0-9\Q/-_\E])+>'
    Priority: 1
  # Headers in <> with extension.
  - Regex: '<([A-Za-z0-9.\Q/-_\E])+>'
    Priority: 2
  # Headers in "" with extension.
  - Regex: '"([A-Za-z0-9.\Q/-_\E])+"'
    Priority: 3