Skip to content

Commit 3237aa3

Browse files
Added more tests for meta functions and fixed string detection (#28)
2 parents 4d5455f + 4b033be commit 3237aa3

File tree

11 files changed

+336
-88
lines changed

11 files changed

+336
-88
lines changed

.clang-format

Lines changed: 148 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,52 +3,96 @@ Language: Cpp
33
# BasedOnStyle: Google
44
AccessModifierOffset: -4
55
AlignAfterOpenBracket: Align
6-
AlignConsecutiveMacros: true
7-
AlignConsecutiveAssignments: false
8-
AlignConsecutiveDeclarations: false
6+
AlignArrayOfStructures: None
7+
AlignConsecutiveAssignments:
8+
Enabled: false
9+
AcrossEmptyLines: false
10+
AcrossComments: false
11+
AlignCompound: false
12+
AlignFunctionPointers: false
13+
PadOperators: true
14+
AlignConsecutiveBitFields:
15+
Enabled: false
16+
AcrossEmptyLines: false
17+
AcrossComments: false
18+
AlignCompound: false
19+
AlignFunctionPointers: false
20+
PadOperators: false
21+
AlignConsecutiveDeclarations:
22+
Enabled: false
23+
AcrossEmptyLines: false
24+
AcrossComments: false
25+
AlignCompound: false
26+
AlignFunctionPointers: false
27+
PadOperators: true
28+
AlignConsecutiveMacros:
29+
Enabled: true
30+
AcrossEmptyLines: false
31+
AcrossComments: false
32+
AlignCompound: false
33+
AlignFunctionPointers: false
34+
PadOperators: true
35+
AlignConsecutiveShortCaseStatements:
36+
Enabled: false
37+
AcrossEmptyLines: false
38+
AcrossComments: false
39+
AlignCaseColons: false
940
AlignEscapedNewlines: Left
10-
AlignOperands: true
11-
AlignTrailingComments: true
41+
AlignOperands: Align
42+
AlignTrailingComments:
43+
Kind: Always
44+
OverEmptyLines: 0
1245
AllowAllArgumentsOnNextLine: true
1346
AllowAllConstructorInitializersOnNextLine: true
1447
AllowAllParametersOfDeclarationOnNextLine: true
15-
AllowShortBlocksOnASingleLine: false
48+
AllowBreakBeforeNoexceptSpecifier: Never
49+
AllowShortBlocksOnASingleLine: Never
1650
AllowShortCaseLabelsOnASingleLine: true
51+
AllowShortCompoundRequirementOnASingleLine: true
52+
AllowShortEnumsOnASingleLine: true
1753
AllowShortFunctionsOnASingleLine: All
18-
AllowShortLambdasOnASingleLine: All
1954
AllowShortIfStatementsOnASingleLine: Never
55+
AllowShortLambdasOnASingleLine: All
2056
AllowShortLoopsOnASingleLine: false
2157
AlwaysBreakAfterDefinitionReturnType: None
2258
AlwaysBreakAfterReturnType: None
2359
AlwaysBreakBeforeMultilineStrings: false
2460
AlwaysBreakTemplateDeclarations: Yes
2561
BinPackArguments: true
2662
BinPackParameters: true
63+
BitFieldColonSpacing: Both
2764
BraceWrapping:
2865
AfterCaseLabel: false
2966
AfterClass: true
30-
AfterControlStatement: false
67+
AfterControlStatement: Never
3168
AfterEnum: false
69+
AfterExternBlock: false
3270
AfterFunction: true
3371
AfterNamespace: false
3472
AfterObjCDeclaration: true
3573
AfterStruct: true
3674
AfterUnion: true
37-
AfterExternBlock: false
3875
BeforeCatch: false
3976
BeforeElse: false
77+
BeforeLambdaBody: false
78+
BeforeWhile: false
4079
IndentBraces: false
4180
SplitEmptyFunction: false
4281
SplitEmptyRecord: false
4382
SplitEmptyNamespace: false
83+
BreakAdjacentStringLiterals: true
84+
BreakAfterAttributes: Leave
85+
BreakAfterJavaFieldAnnotations: false
86+
BreakArrays: true
4487
BreakBeforeBinaryOperators: None
88+
BreakBeforeConceptDeclarations: Always
4589
BreakBeforeBraces: Custom
4690
BreakBeforeInheritanceComma: false
47-
BreakInheritanceList: BeforeColon
91+
BreakBeforeInlineASMColon: OnlyMultiline
4892
BreakBeforeTernaryOperators: true
4993
BreakConstructorInitializersBeforeComma: false
5094
BreakConstructorInitializers: AfterColon
51-
BreakAfterJavaFieldAnnotations: false
95+
BreakInheritanceList: BeforeColon
5296
BreakStringLiterals: true
5397
ColumnLimit: 120
5498
CommentPragmas: '^ IWYU pragma:'
@@ -59,6 +103,8 @@ ContinuationIndentWidth: 4
59103
Cpp11BracedListStyle: true
60104
DerivePointerAlignment: false
61105
DisableFormat: false
106+
EmptyLineAfterAccessModifier: Never
107+
EmptyLineBeforeAccessModifier: LogicalBlock
62108
ExperimentalAutoDetectBinPacking: false
63109
FixNamespaceComments: true
64110
ForEachMacros:
@@ -71,93 +117,123 @@ IncludeCategories:
71117
- Regex: '^"[a-zA-Z0-9_]*\.'
72118
Priority: 1
73119
SortPriority: 1
120+
CaseSensitive: false
74121
- Regex: '^"testutils/'
75122
Priority: 2
76123
SortPriority: 2
124+
CaseSensitive: false
77125
- Regex: '^"tron/'
78126
Priority: 2
79127
SortPriority: 3
128+
CaseSensitive: false
80129
- Regex: '^"fmi/'
81130
Priority: 2
82131
SortPriority: 4
132+
CaseSensitive: false
83133
- Regex: '^"verifier/'
84134
Priority: 2
85135
SortPriority: 5
136+
CaseSensitive: false
86137
- Regex: '^"cora/'
87138
Priority: 2
88139
SortPriority: 6
140+
CaseSensitive: false
89141
- Regex: '^"tiga/'
90142
Priority: 2
91143
SortPriority: 7
144+
CaseSensitive: false
92145
- Regex: '^"statmc/'
93146
Priority: 2
94147
SortPriority: 8
148+
CaseSensitive: false
95149
- Regex: '^"xmltrace/'
96150
Priority: 2
97151
SortPriority: 9
152+
CaseSensitive: false
98153
- Regex: '^"pipeline/'
99154
Priority: 2
100155
SortPriority: 10
156+
CaseSensitive: false
101157
- Regex: '^"protocol/'
102158
Priority: 2
103159
SortPriority: 11
160+
CaseSensitive: false
104161
- Regex: '^"storage/'
105162
Priority: 2
106163
SortPriority: 12
164+
CaseSensitive: false
107165
- Regex: '^"system/'
108166
Priority: 2
109167
SortPriority: 13
168+
CaseSensitive: false
110169
- Regex: '^"dbm/'
111170
Priority: 2
112171
SortPriority: 14
172+
CaseSensitive: false
113173
- Regex: '^"cdd/'
114174
Priority: 2
115175
SortPriority: 15
176+
CaseSensitive: false
116177
- Regex: '^"polyhedra/'
117178
Priority: 2
118179
SortPriority: 16
180+
CaseSensitive: false
119181
- Regex: '^"tracer/'
120182
Priority: 2
121183
SortPriority: 17
184+
CaseSensitive: false
122185
- Regex: '^"utap/'
123186
Priority: 2
124187
SortPriority: 18
188+
CaseSensitive: false
125189
- Regex: '^"io/'
126190
Priority: 2
127191
SortPriority: 19
192+
CaseSensitive: false
128193
- Regex: '^"formats/'
129194
Priority: 2
130195
SortPriority: 20
196+
CaseSensitive: false
131197
- Regex: '^"base/'
132198
Priority: 2
133199
SortPriority: 21
200+
CaseSensitive: false
134201
- Regex: '^"hash/'
135202
Priority: 2
136203
SortPriority: 22
204+
CaseSensitive: false
137205
- Regex: '^"debug/'
138206
Priority: 2
139207
SortPriority: 23
208+
CaseSensitive: false
140209
- Regex: '^<libstrategy/'
141210
Priority: 3
142211
SortPriority: 24
212+
CaseSensitive: false
143213
- Regex: '^<licensing/'
144214
Priority: 3
145215
SortPriority: 25
216+
CaseSensitive: false
146217
- Regex: '^<prlearn/'
147218
Priority: 3
148219
SortPriority: 26
220+
CaseSensitive: false
149221
- Regex: '^<ap_'
150222
Priority: 3
151223
SortPriority: 27
224+
CaseSensitive: false
152225
- Regex: '^<libxml/'
153226
Priority: 3
154227
SortPriority: 28
228+
CaseSensitive: false
155229
- Regex: '^<boost/'
156230
Priority: 3
157231
SortPriority: 29
232+
CaseSensitive: false
158233
- Regex: '^<doctest/'
159234
Priority: 3
160235
SortPriority: 30
236+
CaseSensitive: false
161237
- Regex: '^<[a-bd-z0-9][a-z0-9_]*(\.[a-z]*)?>$'
162238
Priority: 4
163239
SortPriority: 30
@@ -166,29 +242,52 @@ IncludeCategories:
166242
# SortPriority: 31
167243
#IncludeIsMainRegex: '([-_](test|unittest))?$'
168244
IndentCaseLabels: false
245+
IndentExternBlock: AfterExternBlock
246+
IndentGotoLabels: true
169247
IndentPPDirectives: None
248+
IndentRequiresClause: true
170249
IndentWidth: 4
171250
IndentWrappedFunctionNames: false
251+
InsertBraces: false
252+
InsertNewlineAtEOF: false
253+
InsertTrailingCommas: None
254+
IntegerLiteralSeparator:
255+
Binary: 0
256+
BinaryMinDigits: 0
257+
Decimal: 0
258+
DecimalMinDigits: 0
259+
Hex: 0
260+
HexMinDigits: 0
172261
JavaScriptQuotes: Leave
173262
JavaScriptWrapImports: true
174263
KeepEmptyLinesAtTheStartOfBlocks: false
264+
KeepEmptyLinesAtEOF: false
265+
LambdaBodyIndentation: Signature
266+
LineEnding: DeriveLF
175267
MacroBlockBegin: ''
176268
MacroBlockEnd: ''
177269
MaxEmptyLinesToKeep: 1
178270
NamespaceIndentation: None
179271
ObjCBinPackProtocolList: Never
180272
ObjCBlockIndentWidth: 2
273+
ObjCBreakBeforeNestedBlockParam: true
181274
ObjCSpaceAfterProperty: false
182275
ObjCSpaceBeforeProtocolList: true
276+
PackConstructorInitializers: BinPack
183277
PenaltyBreakAssignment: 2
184278
PenaltyBreakBeforeFirstCallParameter: 1
185279
PenaltyBreakComment: 300
186280
PenaltyBreakFirstLessLess: 120
281+
PenaltyBreakOpenParenthesis: 0
282+
PenaltyBreakScopeResolution: 500
187283
PenaltyBreakString: 1000
188284
PenaltyBreakTemplateDeclaration: 10
189285
PenaltyExcessCharacter: 1000000
286+
PenaltyIndentedWhitespace: 0
190287
PenaltyReturnTypeOnItsOwnLine: 200
191288
PointerAlignment: Left
289+
PPIndentWidth: -1
290+
QualifierAlignment: Leave
192291
RawStringFormats:
193292
- Language: Cpp
194293
Delimiters:
@@ -216,27 +315,59 @@ RawStringFormats:
216315
- ParseTextOrDie
217316
- ParseTextProtoOrDie
218317
CanonicalDelimiter: ''
318+
BasedOnStyle: ''
319+
ReferenceAlignment: Pointer
219320
ReflowComments: true
220-
#SortIncludes: true
221-
SortIncludes: false
222-
SortUsingDeclarations: false
321+
RemoveBracesLLVM: false
322+
RemoveParentheses: Leave
323+
RemoveSemicolon: false
324+
RequiresClausePosition: OwnLine
325+
RequiresExpressionIndentation: OuterScope
326+
SeparateDefinitionBlocks: Leave
327+
ShortNamespaceLines: 1
328+
SkipMacroDefinitionBody: false
329+
SortIncludes: Never
330+
SortJavaStaticImport: Before
331+
SortUsingDeclarations: Never
223332
SpaceAfterCStyleCast: false
224333
SpaceAfterLogicalNot: false
225334
SpaceAfterTemplateKeyword: true
335+
SpaceAroundPointerQualifiers: Default
226336
SpaceBeforeAssignmentOperators: true
337+
SpaceBeforeCaseColon: false
227338
SpaceBeforeCpp11BracedList: false
228339
SpaceBeforeCtorInitializerColon: false
229340
SpaceBeforeInheritanceColon: true
341+
SpaceBeforeJsonColon: false
230342
SpaceBeforeParens: ControlStatements
343+
SpaceBeforeParensOptions:
344+
AfterControlStatements: true
345+
AfterForeachMacros: true
346+
AfterFunctionDefinitionName: false
347+
AfterFunctionDeclarationName: false
348+
AfterIfMacros: true
349+
AfterOverloadedOperator: false
350+
AfterPlacementOperator: true
351+
AfterRequiresInClause: false
352+
AfterRequiresInExpression: false
353+
BeforeNonEmptyParentheses: false
231354
SpaceBeforeRangeBasedForLoopColon: true
232-
SpaceInEmptyParentheses: false
355+
SpaceBeforeSquareBrackets: false
356+
SpaceInEmptyBlock: false
233357
SpacesBeforeTrailingComments: 2
234-
SpacesInAngles: false
358+
SpacesInAngles: Never
235359
SpacesInContainerLiterals: true
236360
SpacesInCStyleCastParentheses: false
237-
SpacesInParentheses: false
361+
SpacesInParens: Never
362+
SpacesInParensOptions:
363+
InCStyleCasts: false
364+
InConditionalStatements: false
365+
InEmptyParentheses: false
366+
Other: false
238367
SpacesInSquareBrackets: false
239368
Standard: Auto
369+
StatementAttributeLikeMacros:
370+
- Q_EMIT
240371
StatementMacros:
241372
- Q_UNUSED
242373
- QT_REQUIRE_VERSION

0 commit comments

Comments
 (0)