140f5d65dSopenharmony_ciLanguage: Cpp
240f5d65dSopenharmony_ci# BasedOnStyle:  LLVM
340f5d65dSopenharmony_ci# 访问说明符(public、private等)的偏移
440f5d65dSopenharmony_ciAccessModifierOffset: -4
540f5d65dSopenharmony_ci# 开括号(开圆括号、开尖括号、开方括号)后的对齐
640f5d65dSopenharmony_ciAlignAfterOpenBracket: Align
740f5d65dSopenharmony_ci# 连续赋值时,等号对齐
840f5d65dSopenharmony_ciAlignConsecutiveAssignments: false
940f5d65dSopenharmony_ci# 连续赋值时,变量名对齐
1040f5d65dSopenharmony_ciAlignConsecutiveDeclarations: false
1140f5d65dSopenharmony_ci# 左对齐逃脱换行(使用反斜杠换行)的反斜杠
1240f5d65dSopenharmony_ciAlignEscapedNewlinesLeft: true
1340f5d65dSopenharmony_ci# 水平对齐二元和三元表达式的操作数
1440f5d65dSopenharmony_ciAlignOperands: true
1540f5d65dSopenharmony_ci# 对齐连续的尾随的注释
1640f5d65dSopenharmony_ciAlignTrailingComments: true
1740f5d65dSopenharmony_ci# 允许函数声明的所有参数在放在下一行
1840f5d65dSopenharmony_ciAllowAllParametersOfDeclarationOnNextLine: false
1940f5d65dSopenharmony_ci# 允许短的块放在同一行
2040f5d65dSopenharmony_ciAllowShortBlocksOnASingleLine: false
2140f5d65dSopenharmony_ci# 允许短的case标签放在同一行
2240f5d65dSopenharmony_ciAllowShortCaseLabelsOnASingleLine: false
2340f5d65dSopenharmony_ci# 允许短的函数放在同一行: None, InlineOnly(定义在类中), Empty(空函数), Inline(定义在类中,空函数), All
2440f5d65dSopenharmony_ciAllowShortFunctionsOnASingleLine: Empty
2540f5d65dSopenharmony_ci# 允许短的if语句保持在同一行
2640f5d65dSopenharmony_ciAllowShortIfStatementsOnASingleLine: false
2740f5d65dSopenharmony_ci# 允许短的循环保持在同一行
2840f5d65dSopenharmony_ciAllowShortLoopsOnASingleLine: false
2940f5d65dSopenharmony_ci# 总是在定义返回类型后换行(deprecated)
3040f5d65dSopenharmony_ciAlwaysBreakAfterDefinitionReturnType: None
3140f5d65dSopenharmony_ci# 总是在返回类型后换行: None, All, TopLevel(顶级函数,不包括在类中的函数),
3240f5d65dSopenharmony_ci#   AllDefinitions(所有的定义,不包括声明), TopLevelDefinitions(所有的顶级函数的定义)
3340f5d65dSopenharmony_ciAlwaysBreakAfterReturnType: None
3440f5d65dSopenharmony_ci# 总是在多行string字面量前换行
3540f5d65dSopenharmony_ciAlwaysBreakBeforeMultilineStrings: true
3640f5d65dSopenharmony_ci# 总是在template声明后换行
3740f5d65dSopenharmony_ciAlwaysBreakTemplateDeclarations: true
3840f5d65dSopenharmony_ci# false表示函数实参要么都在同一行,要么都各自一行
3940f5d65dSopenharmony_ciBinPackArguments: true
4040f5d65dSopenharmony_ci# false表示所有形参要么都在同一行,要么都各自一行
4140f5d65dSopenharmony_ciBinPackParameters: false
4240f5d65dSopenharmony_ci# 大括号换行,只有当BreakBeforeBraces设置为Custom时才有效
4340f5d65dSopenharmony_ciBraceWrapping:
4440f5d65dSopenharmony_ci  AfterClass: false
4540f5d65dSopenharmony_ci  AfterControlStatement: false
4640f5d65dSopenharmony_ci  AfterEnum: false
4740f5d65dSopenharmony_ci  AfterFunction: true
4840f5d65dSopenharmony_ci  AfterNamespace: false
4940f5d65dSopenharmony_ci  AfterObjCDeclaration: false
5040f5d65dSopenharmony_ci  AfterStruct: false
5140f5d65dSopenharmony_ci  AfterUnion: false
5240f5d65dSopenharmony_ci  BeforeCatch: false
5340f5d65dSopenharmony_ci  BeforeElse: false
5440f5d65dSopenharmony_ci  IndentBraces: false
5540f5d65dSopenharmony_ci# 在二元运算符前换行: None(在操作符后换行), NonAssignment(在非赋值的操作符前换行), All(在操作符前换行)
5640f5d65dSopenharmony_ciBreakBeforeBinaryOperators: None
5740f5d65dSopenharmony_ci# 在大括号前换行: Attach(始终将大括号附加到周围的上下文), Linux(除函数、命名空间和类定义,与Attach类似),
5840f5d65dSopenharmony_ci#   Mozilla(除枚举、函数、记录定义,与Attach类似), Stroustrup(除函数定义、catch、else,与Attach类似),
5940f5d65dSopenharmony_ci#   Allman(总是在大括号前换行), GNU(总是在大括号前换行,并对于控制语句的大括号增加额外的缩进), WebKit(在函数前换行), Custom
6040f5d65dSopenharmony_ci#   注:这里认为语句块也属于函数
6140f5d65dSopenharmony_ciBreakBeforeBraces: Custom
6240f5d65dSopenharmony_ci# 在三元运算符前换行
6340f5d65dSopenharmony_ciBreakBeforeTernaryOperators: true
6440f5d65dSopenharmony_ci# 在构造函数的初始化列表的逗号前换行
6540f5d65dSopenharmony_ciBreakConstructorInitializersBeforeComma: false
6640f5d65dSopenharmony_ci# 每行字符的限制,0表示没有限制
6740f5d65dSopenharmony_ciColumnLimit: 120
6840f5d65dSopenharmony_ci# 描述具有特殊意义的注释的正则表达式,它不应该被分割为多行或以其它方式改变
6940f5d65dSopenharmony_ciCommentPragmas: "^ IWYU pragma:"
7040f5d65dSopenharmony_ci# 构造函数的初始化列表要么都在同一行,要么都各自一行
7140f5d65dSopenharmony_ciConstructorInitializerAllOnOneLineOrOnePerLine: true
7240f5d65dSopenharmony_ci# 构造函数的初始化列表的缩进宽度
7340f5d65dSopenharmony_ciConstructorInitializerIndentWidth: 4
7440f5d65dSopenharmony_ci# 延续的行的缩进宽度
7540f5d65dSopenharmony_ciContinuationIndentWidth: 4
7640f5d65dSopenharmony_ci# 去除C++11的列表初始化的大括号{后和}前的空格
7740f5d65dSopenharmony_ciCpp11BracedListStyle: true
7840f5d65dSopenharmony_ci# 继承最常用的指针和引用的对齐方式
7940f5d65dSopenharmony_ciDerivePointerAlignment: false
8040f5d65dSopenharmony_ci# 关闭格式化
8140f5d65dSopenharmony_ciDisableFormat: false
8240f5d65dSopenharmony_ci# 自动检测函数的调用和定义是否被格式为每行一个参数(Experimental)
8340f5d65dSopenharmony_ciExperimentalAutoDetectBinPacking: false
8440f5d65dSopenharmony_ci# 需要被解读为foreach循环而不是函数调用的宏
8540f5d65dSopenharmony_ciForEachMacros: [foreach, Q_FOREACH, BOOST_FOREACH]
8640f5d65dSopenharmony_ci# 对#include进行排序,匹配了某正则表达式的#include拥有对应的优先级,匹配不到的则默认优先级为INT_MAX(优先级越小排序越靠前),
8740f5d65dSopenharmony_ci# 可以定义负数优先级从而保证某些#include永远在最前面
8840f5d65dSopenharmony_ciIncludeCategories:
8940f5d65dSopenharmony_ci  - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
9040f5d65dSopenharmony_ci    Priority: 2
9140f5d65dSopenharmony_ci  - Regex: '^(<|"(gtest|isl|json)/)'
9240f5d65dSopenharmony_ci    Priority: 3
9340f5d65dSopenharmony_ci  - Regex: ".*"
9440f5d65dSopenharmony_ci    Priority: 1
9540f5d65dSopenharmony_ci# 缩进case标签
9640f5d65dSopenharmony_ciIndentCaseLabels: true
9740f5d65dSopenharmony_ci# 缩进宽度
9840f5d65dSopenharmony_ciIndentWidth: 4
9940f5d65dSopenharmony_ci# 函数返回类型换行时,缩进函数声明或函数定义的函数名
10040f5d65dSopenharmony_ciIndentWrappedFunctionNames: true
10140f5d65dSopenharmony_ci# 保留在块开始处的空行
10240f5d65dSopenharmony_ciKeepEmptyLinesAtTheStartOfBlocks: true
10340f5d65dSopenharmony_ci# 开始一个块的宏的正则表达式
10440f5d65dSopenharmony_ciMacroBlockBegin: ""
10540f5d65dSopenharmony_ci# 结束一个块的宏的正则表达式
10640f5d65dSopenharmony_ciMacroBlockEnd: ""
10740f5d65dSopenharmony_ci# 连续空行的最大数量
10840f5d65dSopenharmony_ciMaxEmptyLinesToKeep: 1
10940f5d65dSopenharmony_ci# 命名空间的缩进: None, Inner(缩进嵌套的命名空间中的内容), All
11040f5d65dSopenharmony_ciNamespaceIndentation: None
11140f5d65dSopenharmony_ci# 使用ObjC块时缩进宽度
11240f5d65dSopenharmony_ciObjCBlockIndentWidth: 4
11340f5d65dSopenharmony_ci# 在ObjC的@property后添加一个空格
11440f5d65dSopenharmony_ciObjCSpaceAfterProperty: false
11540f5d65dSopenharmony_ci# 在ObjC的protocol列表前添加一个空格
11640f5d65dSopenharmony_ciObjCSpaceBeforeProtocolList: true
11740f5d65dSopenharmony_ci# 在call(后对函数调用换行的penalty
11840f5d65dSopenharmony_ciPenaltyBreakBeforeFirstCallParameter: 19
11940f5d65dSopenharmony_ci# 在一个注释中引入换行的penalty
12040f5d65dSopenharmony_ciPenaltyBreakComment: 300
12140f5d65dSopenharmony_ci# 第一次在<<前换行的penalty
12240f5d65dSopenharmony_ciPenaltyBreakFirstLessLess: 120
12340f5d65dSopenharmony_ci# 在一个字符串字面量中引入换行的penalty
12440f5d65dSopenharmony_ciPenaltyBreakString: 1000
12540f5d65dSopenharmony_ci# 对于每个在行字符数限制之外的字符的penalty
12640f5d65dSopenharmony_ciPenaltyExcessCharacter: 1000000
12740f5d65dSopenharmony_ci# 将函数的返回类型放到它自己的行的penalty
12840f5d65dSopenharmony_ciPenaltyReturnTypeOnItsOwnLine: 120
12940f5d65dSopenharmony_ci# 指针和引用的对齐: Left, Right, Middle
13040f5d65dSopenharmony_ciPointerAlignment: Right
13140f5d65dSopenharmony_ci# 允许重新排版注释
13240f5d65dSopenharmony_ciReflowComments: true
13340f5d65dSopenharmony_ci# 允许排序#include
13440f5d65dSopenharmony_ciSortIncludes: true
13540f5d65dSopenharmony_ci# 在C风格类型转换后添加空格
13640f5d65dSopenharmony_ciSpaceAfterCStyleCast: false
13740f5d65dSopenharmony_ci# 在赋值运算符之前添加空格
13840f5d65dSopenharmony_ciSpaceBeforeAssignmentOperators: true
13940f5d65dSopenharmony_ci# 开圆括号之前添加一个空格: Never, ControlStatements, Always
14040f5d65dSopenharmony_ciSpaceBeforeParens: ControlStatements
14140f5d65dSopenharmony_ci# 在空的圆括号中添加空格
14240f5d65dSopenharmony_ciSpaceInEmptyParentheses: false
14340f5d65dSopenharmony_ci# 在尾随的评论前添加的空格数(只适用于//)
14440f5d65dSopenharmony_ciSpacesBeforeTrailingComments: 1
14540f5d65dSopenharmony_ci# 在尖括号的<后和>前添加空格
14640f5d65dSopenharmony_ciSpacesInAngles: false
14740f5d65dSopenharmony_ci# 在容器(ObjC和JavaScript的数组和字典等)字面量中添加空格
14840f5d65dSopenharmony_ciSpacesInContainerLiterals: true
14940f5d65dSopenharmony_ci# 在C风格类型转换的括号中添加空格
15040f5d65dSopenharmony_ciSpacesInCStyleCastParentheses: false
15140f5d65dSopenharmony_ci# 在圆括号的(后和)前添加空格
15240f5d65dSopenharmony_ciSpacesInParentheses: false
15340f5d65dSopenharmony_ci# 在方括号的[后和]前添加空格,lamda表达式和未指明大小的数组的声明不受影响
15440f5d65dSopenharmony_ciSpacesInSquareBrackets: false
15540f5d65dSopenharmony_ci# 在C++11的列表初始化的大括号之前添加空格
15640f5d65dSopenharmony_ciSpaceBeforeCpp11BracedList: true
15740f5d65dSopenharmony_ci# 标准: c++03,c++11,c++14,c++17,c++20,Latest,Auto
15840f5d65dSopenharmony_ciStandard: c++17
15940f5d65dSopenharmony_ci# tab宽度
16040f5d65dSopenharmony_ciTabWidth: 4
16140f5d65dSopenharmony_ci# 使用tab字符: Never, ForIndentation, ForContinuationAndIndentation, Always
16240f5d65dSopenharmony_ciUseTab: Never