BasedOnStyle: Google
AccessModifierOffset: -2
AlignAfterOpenBracket: DontAlign
AlignOperands: false
AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: true
BreakBeforeBraces: Allman
BreakConstructorInitializersBeforeComma: true
ColumnLimit: 120
SortIncludes: true
IndentPPDirectives: AfterHash
PointerAlignment: Left
DerivePointerAlignment: false
IncludeCategories:
  # vw_string_format.h has a template specialization for fmt.h
  # and it must be included first to prevent compile errors
  - Regex:           '"vw\/core\/vw_string_view_fmt\.h"'
    Priority:        0
  # First block is local directory includes
  - Regex:           '"[[:alnum:]._\/]+"'
    Priority:        1
  # Second block is system includes with .h suffix. Usually dependencies.
  - Regex:           '<[[:alnum:]._\/]+\.h>'
    Priority:        2
  # STL system deps
  - Regex:           '<[[:alnum:]._\/]+>'
    Priority:        3
  # Catch all
  - Regex:           '.*'
    Priority:        4
