BasedOnStyle: LLVM
IndentWidth: 4
UseTab: Never
Language: Cpp
Standard: Cpp11

AccessModifierOffset: -4

AlignConsecutiveDeclarations: false
AlignConsecutiveAssignments: false
AlignTrailingComments: true

AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: Inline

AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: true

BinPackArguments: false
BinPackParameters: false

BreakBeforeBraces: Allman
BreakConstructorInitializersBeforeComma: true

ColumnLimit: 100
CommentPragmas: '.*'

IndentCaseLabels: false
IndentWrappedFunctionNames: true

KeepEmptyLinesAtTheStartOfBlocks: false
NamespaceIndentation: All

PointerAlignment: Left
SpaceAfterCStyleCast: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false

SortIncludes: false
ReflowComments: true

IncludeCategories:
  - Regex:           '^".*'
    Priority:        3
  - Regex:           '^<.*'
    Priority:        2
SortIncludes: true
