---
BasedOnStyle: LLVM
Language: Cpp
Standard: c++17

# Indentation
IndentWidth: 4
TabWidth: 4
UseTab: Never
ColumnLimit: 100

# Braces
BreakBeforeBraces: Attach
AllowShortFunctionsOnASingleLine: Empty
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false

# Spacing
SpaceAfterCStyleCast: false
SpaceBeforeParens: Never
SpaceInEmptyParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false

# Breaks
AlwaysBreakTemplateDeclarations: Yes

# Alignment
AlignConsecutiveAssignments: None
AlignConsecutiveDeclarations: None
AlignOperands: Align
AlignTrailingComments: true

# Pointers and References
PointerAlignment: Left
DerivePointerAlignment: false

# Include sorting
SortIncludes: CaseSensitive
IncludeBlocks: Regroup

# Other
IndentCaseLabels: true
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 1
