# Commented out parameters are those with the same value as base LLVM style
# last sync: Clang 6.0.1
---
Language:           Cpp
BasedOnStyle:       LLVM
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
#AlignConsecutiveAssignments: false
#AlignConsecutiveDeclarations: false
#AlignEscapedNewlines: Right
AlignOperands:   false
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
#AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: All
AllowShortIfStatementsOnASingleLine: true
#AllowShortLoopsOnASingleLine: false
#AlwaysBreakAfterDefinitionReturnType: None
#AlwaysBreakAfterReturnType: None
#AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: No
#BinPackArguments: true
#BinPackParameters: true
BraceWrapping:
  AfterClass:      false
  AfterControlStatement: false
  AfterEnum:       false
  AfterFunction:   true
  AfterNamespace:  false
  AfterObjCDeclaration: false
  AfterStruct:     false
  AfterUnion:      false
  AfterExternBlock: false
  BeforeCatch:     false
  BeforeElse:      false
  IndentBraces:    false
  SplitEmptyFunction: true
  SplitEmptyRecord: false
  SplitEmptyNamespace: false
#BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
#BreakBeforeInheritanceComma: false
BreakBeforeTernaryOperators: false
#BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: AfterColon
#BreakAfterJavaFieldAnnotations: false
#BreakStringLiterals: true
ColumnLimit:     0
#CommentPragmas:  '^ IWYU pragma:'
#CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
#DerivePointerAlignment: false
#DisableFormat:   false
#ExperimentalAutoDetectBinPacking: false
#FixNamespaceComments: true
#ForEachMacros:
#  - foreach
#  - Q_FOREACH
#  - BOOST_FOREACH
#IncludeBlocks:   Preserve
IncludeCategories:
 - Regex:           '^".*"'
   Priority:        1
 - Regex:           '^<.*\.h>'
   Priority:        2
 - Regex:           '^<.*'
   Priority:        3
#IncludeIsMainRegex: '(Test)?$'
#IndentCaseLabels: false
#IndentPPDirectives: None
IndentWidth:        4
#IndentWrappedFunctionNames: false
#JavaScriptQuotes: Leave
#JavaScriptWrapImports: true
#KeepEmptyLinesAtTheStartOfBlocks: true
#MacroBlockBegin: ''
#MacroBlockEnd:   ''
#MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
#ObjCBlockIndentWidth: 2
#ObjCSpaceAfterProperty: false
#ObjCSpaceBeforeProtocolList: true
#PenaltyBreakAssignment: 2
#PenaltyBreakBeforeFirstCallParameter: 19
#PenaltyBreakComment: 300
#PenaltyBreakFirstLessLess: 120
#PenaltyBreakString: 1000
#PenaltyExcessCharacter: 1000000
#PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right
#RawStringFormats:
#  - Delimiter:       pb
#    Language:        TextProto
#    BasedOnStyle:    google
#ReflowComments:  true
#SortIncludes:    true
#SortUsingDeclarations: true
#SpaceAfterCStyleCast: false
#SpaceAfterTemplateKeyword: true
#SpaceBeforeAssignmentOperators: true
#SpaceBeforeParens: ControlStatements
#SpaceInEmptyParentheses: false
#SpacesBeforeTrailingComments: 1
#SpacesInAngles:  false
#SpacesInContainerLiterals: true
#SpacesInCStyleCastParentheses: false
#SpacesInParentheses: false
#SpacesInSquareBrackets: false
SpacesInLineCommentPrefix:
  Maximum: -1
  Minimum: 0
Standard:           Cpp11
TabWidth:           4
UseTab:             Always
...
