1Language:        Cpp
2AccessModifierOffset: -4
3AlignAfterOpenBracket: Align
4AlignConsecutiveAssignments: false
5AlignConsecutiveDeclarations: false
6AlignEscapedNewlinesLeft: true
7AlignOperands:   true
8AlignTrailingComments: false
9AllowAllParametersOfDeclarationOnNextLine: true
10AllowShortBlocksOnASingleLine: false
11AllowShortCaseLabelsOnASingleLine: false
12AllowShortFunctionsOnASingleLine: None
13AllowShortIfStatementsOnASingleLine: false
14AllowShortLoopsOnASingleLine: false
15AlwaysBreakAfterDefinitionReturnType: None
16AlwaysBreakAfterReturnType: None
17AlwaysBreakBeforeMultilineStrings: true
18AlwaysBreakTemplateDeclarations: true
19BinPackArguments: false
20BinPackParameters: false
21BraceWrapping:
22  AfterClass:      false
23  AfterControlStatement: false
24  AfterEnum:       false
25  AfterFunction:   false
26  AfterNamespace:  false
27  AfterObjCDeclaration: false
28  AfterStruct:     false
29  AfterUnion:      false
30  BeforeCatch:     false
31  BeforeElse:      false
32  IndentBraces:    false
33BreakBeforeBinaryOperators: None
34BreakBeforeBraces: Attach
35BreakBeforeTernaryOperators: true
36BreakConstructorInitializersBeforeComma: false
37ColumnLimit:     80
38CommentPragmas:  '^ IWYU pragma:'
39ConstructorInitializerAllOnOneLineOrOnePerLine: true
40ConstructorInitializerIndentWidth: 4
41ContinuationIndentWidth: 8
42Cpp11BracedListStyle: true
43DerivePointerAlignment: false
44DisableFormat:   false
45ExperimentalAutoDetectBinPacking: false
46ForEachMacros:   [ foreach, Q_FOREACH, BOOST_FOREACH ]
47# Include ordering based on:
48# https://github.com/couchbase/kv_engine/blob/master/docs/CodingStandards.rst#include-style
49IncludeCategories:
50  - Regex:           '^"config.h"'
51    Priority:        -1
52# Main header for a source file automatically gets priority 0.
53  - Regex:           '^".*\.h"'
54    Priority:        1
55  - Regex:           '^<.*\.(h|hpp)>'
56    Priority:        2
57  - Regex:           '^<.*'
58    Priority:        3
59  - Regex:           '.*'
60    Priority:        4
61IndentCaseLabels: false
62IndentWidth:     4
63IndentWrappedFunctionNames: false
64KeepEmptyLinesAtTheStartOfBlocks: false
65MacroBlockBegin: ''
66MacroBlockEnd:   ''
67MaxEmptyLinesToKeep: 1
68NamespaceIndentation: None
69ObjCBlockIndentWidth: 2
70ObjCSpaceAfterProperty: false
71ObjCSpaceBeforeProtocolList: false
72PenaltyBreakBeforeFirstCallParameter: 1
73PenaltyBreakComment: 300
74PenaltyBreakFirstLessLess: 120
75PenaltyBreakString: 1000
76PenaltyExcessCharacter: 1000000
77PenaltyReturnTypeOnItsOwnLine: 200
78PointerAlignment: Left
79ReflowComments:  true
80SortIncludes:    true
81SpaceAfterCStyleCast: false
82SpaceBeforeAssignmentOperators: true
83SpaceBeforeParens: ControlStatements
84SpaceInEmptyParentheses: false
85SpacesBeforeTrailingComments: 1
86SpacesInAngles:  false
87SpacesInContainerLiterals: true
88SpacesInCStyleCastParentheses: false
89SpacesInParentheses: false
90SpacesInSquareBrackets: false
91Standard:        Auto
92TabWidth:        8
93UseTab:          Never
94