Skip to content
This repository was archived by the owner on Mar 8, 2020. It is now read-only.

Commit 4034821

Browse files
authored
Merge pull request #18 from juanjux/rc2
RC2/final?
2 parents 26bb13a + c87c43e commit 4034821

19 files changed

+680016
-711
lines changed

driver/normalizer/normalizer.go

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -220,8 +220,8 @@ var Normalizers = []Mapping{
220220
)),
221221

222222
MapSemantic("CPPASTQualifiedName", uast.QualifiedIdentifier{}, MapObj(
223-
Obj{
224-
"Prop_AllSegments": Each("qualParts", Cases("caseQualParts",
223+
Fields{
224+
{Name: "Prop_AllSegments", Op: Each("qualParts", Cases("caseQualParts",
225225
Fields{
226226
{Name: uast.KeyType, Op: String("uast:Identifier")},
227227
{Name: uast.KeyPos, Op: AnyNode(nil)},
@@ -245,21 +245,32 @@ var Normalizers = []Mapping{
245245
"Name": Var("name"),
246246
}},
247247
},
248-
)),
248+
Is(nil),
249+
))},
250+
// Ignored: already on AllSegments
251+
{Name: "Prop_Qualifier", Optional: "optPropQual", Op: AnyNode(nil)},
249252
},
250253
Obj{
251-
"Names": Each("qualParts",
252-
// "caseQualParts" ommited since all 3 cases extract the "name" variable
254+
"Names": Each("qualParts", Cases("caseQualParts",
253255
UASTType(uast.Identifier{}, Obj{
254256
"Name": Var("name"),
255-
})),
257+
}),
258+
UASTType(uast.Identifier{}, Obj{
259+
"Name": Var("name"),
260+
}),
261+
UASTType(uast.Identifier{}, Obj{
262+
"Name": Var("name"),
263+
}),
264+
Is(nil),
265+
)),
256266
},
257267
)),
258268

259269
MapSemantic("CPPASTFunctionDefinition", uast.FunctionGroup{}, MapObj(
260270
Fields{
261271
{Name: "IsDefaulted", Op: AnyNode(nil)},
262272
{Name: "IsDeleted", Op: AnyNode(nil)},
273+
{Name: "ExpandedFromMacro", Optional: "optMacro1", Op: AnyNode(nil)},
263274
{Name: "Prop_Body", Optional: "optBody", Op: Var("body")},
264275

265276
{Name: "Prop_DeclSpecifier", Op: Cases("retTypeCase",
@@ -285,6 +296,7 @@ var Normalizers = []Mapping{
285296
{Name: "IsVirtual", Op: AnyNode(nil)},
286297
{Name: "IsVolatile", Op: AnyNode(nil)},
287298
{Name: "StorageClass", Op: AnyNode(nil)},
299+
{Name: "ExpandedFromMacro", Optional: "optMacro2", Op: AnyNode(nil)},
288300
{Name: "Type", Op: String("void")},
289301
},
290302
// unspecified (ie constructor/destructors)
@@ -308,6 +320,7 @@ var Normalizers = []Mapping{
308320
{Name: "IsVirtual", Op: AnyNode(nil)},
309321
{Name: "IsVolatile", Op: AnyNode(nil)},
310322
{Name: "StorageClass", Op: AnyNode(nil)},
323+
{Name: "ExpandedFromMacro", Optional: "optMacro3", Op: AnyNode(nil)},
311324
{Name: "Type", Op: String("unspecified")},
312325
},
313326
Fields{
@@ -331,6 +344,7 @@ var Normalizers = []Mapping{
331344
{Name: "IsVirtual", Op: AnyNode(nil)},
332345
{Name: "IsVolatile", Op: AnyNode(nil)},
333346
{Name: "StorageClass", Op: Var("StorageClass")},
347+
{Name: "ExpandedFromMacro", Optional: "optMacro4", Op: AnyNode(nil)},
334348
{Name: "Type", Op: Var("retType")},
335349
},
336350
Fields{
@@ -348,6 +362,7 @@ var Normalizers = []Mapping{
348362
{Name: "IsTypeName", Op: AnyNode(nil)},
349363
{Name: "IsVirtual", Op: AnyNode(nil)},
350364
{Name: "IsVolatile", Op: AnyNode(nil)},
365+
{Name: "ExpandedFromMacro", Optional: "optMacro5", Op: AnyNode(nil)},
351366
{Name: "Prop_Name", Op: Var("retType")},
352367
},
353368
)},
@@ -361,6 +376,9 @@ var Normalizers = []Mapping{
361376
{Name: "IsOverride", Op: AnyNode(nil)},
362377
{Name: "IsPureVirtual", Op: AnyNode(nil)},
363378
{Name: "IsVolatile", Op: AnyNode(nil)},
379+
{Name: "ExpandedFromMacro", Optional: "optMacro6", Op: AnyNode(nil)},
380+
{Name: "Prop_NoexceptExpression", Optional: "declNoExcept", Op: AnyNode(nil)},
381+
{Name: "Prop_VirtSpecifiers", Optional: "declVirtSpecs", Op: AnyNode(nil)},
364382

365383
{Name: "Prop_Name", Op: Cases("caseName",
366384
// Empty identifier
@@ -393,6 +411,8 @@ var Normalizers = []Mapping{
393411
{Name: "DeclaresParameterPack", Op: AnyNode(nil)},
394412
{Name: "Prop_PointerOperators", Optional: "optPointerOps", Op: AnyNode(nil)},
395413
{Name: "Prop_Initializer", Optional: "optInitializer", Op: Var("ainit")},
414+
{Name: "ExpandedFromMacro", Optional: "optMacro7", Op: AnyNode(nil)},
415+
{Name: "Prop_PointerOperators", Optional: "optPointerOps", Op: AnyNode(nil)},
396416
},
397417
Fields{
398418
{Name: uast.KeyType, Op: String("CPPASTArrayDeclarator")},
@@ -402,6 +422,8 @@ var Normalizers = []Mapping{
402422
{Name: "DeclaresParameterPack", Op: AnyNode(nil)},
403423
{Name: "Prop_ArrayModifiers", Op: AnyNode(nil)},
404424
{Name: "Prop_Initializer", Optional: "optInitializer", Op: Var("ainit")},
425+
{Name: "ExpandedFromMacro", Optional: "optMacro8", Op: AnyNode(nil)},
426+
{Name: "Prop_PointerOperators", Optional: "optPointerOps", Op: AnyNode(nil)},
405427
},
406428
))},
407429
}},

0 commit comments

Comments
 (0)