---
BasedOnStyle: GNU
Language:        Cpp
AlignAfterOpenBracket: DontAlign
AlignArrayOfStructures: Left
AlignConsecutiveAssignments:
  Enabled:         true
  AlignFunctionDeclarations: true
AlignConsecutiveBitFields:
  Enabled:         true
  AcrossEmptyLines: true
  AlignFunctionDeclarations: true
AlignConsecutiveDeclarations:
  Enabled:         true
  PadOperators:    true
AlignConsecutiveMacros:
  Enabled:         true
  AcrossEmptyLines: true
  AlignFunctionDeclarations: true
  PadOperators:    true
AlignConsecutiveShortCaseStatements:
  Enabled:         true
AlignEscapedNewlines: Left
AlignOperands:   DontAlign
AllowShortBlocksOnASingleLine: Always
AllowShortIfStatementsOnASingleLine: WithoutElse
AllowShortCaseLabelsOnASingleLine: true
AllowShortCompoundRequirementOnASingleLine: true
AllowShortLoopsOnASingleLine: true
BraceWrapping:
  AfterCaseLabel:  false
  AfterClass:      false
  AfterControlStatement: Never
  AfterEnum:       false
  AfterExternBlock: false
  AfterFunction:   true
  AfterNamespace:  false
  AfterObjCDeclaration: false
  AfterStruct:     false
  AfterUnion:      false
  BeforeCatch:     false
  BeforeElse:      false
  BeforeLambdaBody: false
  BeforeWhile:     false
  IndentBraces:    false
BreakAfterReturnType: Automatic
BreakBeforeBinaryOperators: None
BreakBeforeConceptDeclarations: Never
BreakBeforeBraces: Custom
BreakBeforeTernaryOperators: false
BreakStringLiterals: false
BreakTemplateDeclarations: MultiLine
ColumnLimit:     0
ConstructorInitializerIndentWidth: 8
ContinuationIndentWidth: 8
Cpp11BracedListStyle: true
IncludeBlocks:   Regroup
IncludeCategories:
  - Regex:           '^<.*>'
    Priority:        2
    SortPriority:    0
    CaseSensitive:   true
  - Regex:           '^".*"'
    Priority:        3
    SortPriority:    0
    CaseSensitive:   true
  - Regex:           '.*'
    Priority:        1
    SortPriority:    0
    CaseSensitive:   false
IncludeIsMainRegex: '([-_](test|unittest))?$'
IndentGotoLabels: false
IndentRequiresClause: false
IndentWidth:     8
LineEnding:      LF
MaxEmptyLinesToKeep: 2
PackConstructorInitializers: NextLine
PenaltyBreakAssignment: 10
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakBeforeMemberAccess: 150
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakOpenParenthesis: 0
PenaltyBreakScopeResolution: 500
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyIndentedWhitespace: 0
PenaltyReturnTypeOnItsOwnLine: 60
QualifierAlignment: Left
SpaceBeforeParens: ControlStatements
SpaceBeforeParensOptions:
  AfterControlStatements: true
  AfterForeachMacros: true
  AfterIfMacros:   true
SpaceInEmptyBlock: true
SpacesInContainerLiterals: false
Standard:        Auto
UseTab:          ForContinuationAndIndentation
