---
BasedOnStyle:  LLVM

Standard:        Cpp11
IndentWidth:     4
TabWidth:        4
UseTab:          Always
ColumnLimit:     200
MaxEmptyLinesToKeep: 4

AlignTrailingComments: false
AllowShortLoopsOnASingleLine: true

# require clang-format v14+
# PackConstructorInitializers: CurrentLine

BreakBeforeBraces: Custom
BraceWrapping:
    AfterClass: true
    AfterStruct: true
    AfterFunction: true
    BeforeElse: true


SpaceBeforeParens: Never

# require clang-format v14+
# SpaceBeforeParens: Custom
# SpaceBeforeParensOptions:
#     AfterControlStatements: false


SpacesInParentheses: false
SpacesInConditionalStatement: true
SpaceInEmptyParentheses: false
SpacesInAngles: Leave

IndentAccessModifiers: false
AccessModifierOffset: -4

AllowShortFunctionsOnASingleLine: InlineOnly
AllowShortIfStatementsOnASingleLine: AllIfsAndElse
AllowShortBlocksOnASingleLine: Always

#PointerAlignment: Middle
#SpaceAroundPointerQualifiers: Both
#ReferenceAlignment: Middle
...
