# The style of the Mermaid backend (4 spaces, Allman braces, 120 columns)
Language: Cpp
BasedOnStyle: LLVM
Standard: c++17
ColumnLimit: 120
IndentWidth: 4
ContinuationIndentWidth: 4
UseTab: Never
BreakBeforeBraces: Custom
BraceWrapping:
  AfterCaseLabel: true
  AfterClass: true
  AfterControlStatement: Always
  AfterEnum: true
  AfterFunction: true
  AfterNamespace: true
  AfterStruct: true
  AfterUnion: true
  AfterExternBlock: true
  BeforeCatch: true
  BeforeElse: true
  BeforeLambdaBody: false
  BeforeWhile: false
  IndentBraces: false
  SplitEmptyFunction: false
  SplitEmptyRecord: false
  SplitEmptyNamespace: false
NamespaceIndentation: All
FixNamespaceComments: false
IndentCaseLabels: false
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AllowShortBlocksOnASingleLine: Empty
AllowShortCaseLabelsOnASingleLine: true
AllowShortEnumsOnASingleLine: true
AllowShortLambdasOnASingleLine: All
AlignAfterOpenBracket: Align
AlignTrailingComments:
  Kind: Always
  OverEmptyLines: 0
BinPackArguments: true
BinPackParameters: true
BreakBeforeBinaryOperators: NonAssignment
BreakBeforeTernaryOperators: true
BreakStringLiterals: false
Cpp11BracedListStyle: true
PointerAlignment: Left
ReferenceAlignment: Left
ReflowComments: true
SortIncludes: Never
SpaceAfterCStyleCast: false
SpaceBeforeParens: ControlStatements
SpacesBeforeTrailingComments: 2
MaxEmptyLinesToKeep: 1
