171b4c226SZixu Wang // RUN: rm -rf %t
271b4c226SZixu Wang // RUN: split-file %s %t
371b4c226SZixu Wang // RUN: sed -e "s@INPUT_DIR@%/t@g" %t/reference.output.json.in >> \
471b4c226SZixu Wang // RUN: %t/reference.output.json
571b4c226SZixu Wang // RUN: %clang -extract-api -target arm64-apple-macosx \
671b4c226SZixu Wang // RUN: %t/input.h -o %t/output.json | FileCheck -allow-empty %s
771b4c226SZixu Wang 
871b4c226SZixu Wang // Generator version is not consistent across test runs, normalize it.
971b4c226SZixu Wang // RUN: sed -e "s@\"generator\": \".*\"@\"generator\": \"?\"@g" \
1071b4c226SZixu Wang // RUN: %t/output.json >> %t/output-normalized.json
1171b4c226SZixu Wang // RUN: diff %t/reference.output.json %t/output-normalized.json
1271b4c226SZixu Wang 
1371b4c226SZixu Wang // CHECK-NOT: error:
1471b4c226SZixu Wang // CHECK-NOT: warning:
1571b4c226SZixu Wang 
1671b4c226SZixu Wang //--- input.h
1771b4c226SZixu Wang /// Kinds of vehicles
1871b4c226SZixu Wang enum Vehicle {
1971b4c226SZixu Wang   Bicycle,
2071b4c226SZixu Wang   Car,
2171b4c226SZixu Wang   Train, ///< Move this to the top! -Sheldon
2271b4c226SZixu Wang   Ship,
2371b4c226SZixu Wang   Airplane,
2471b4c226SZixu Wang };
2571b4c226SZixu Wang 
2671b4c226SZixu Wang enum Direction : unsigned char {
2771b4c226SZixu Wang   North = 0,
2871b4c226SZixu Wang   East,
2971b4c226SZixu Wang   South,
3071b4c226SZixu Wang   West
3171b4c226SZixu Wang };
3271b4c226SZixu Wang 
3371b4c226SZixu Wang //--- reference.output.json.in
3471b4c226SZixu Wang {
3571b4c226SZixu Wang   "metadata": {
3671b4c226SZixu Wang     "formatVersion": {
3771b4c226SZixu Wang       "major": 0,
3871b4c226SZixu Wang       "minor": 5,
3971b4c226SZixu Wang       "patch": 3
4071b4c226SZixu Wang     },
4171b4c226SZixu Wang     "generator": "?"
4271b4c226SZixu Wang   },
4371b4c226SZixu Wang   "module": {
4471b4c226SZixu Wang     "name": "",
4571b4c226SZixu Wang     "platform": {
4671b4c226SZixu Wang       "architecture": "arm64",
4771b4c226SZixu Wang       "operatingSystem": {
4871b4c226SZixu Wang         "minimumVersion": {
4971b4c226SZixu Wang           "major": 11,
5071b4c226SZixu Wang           "minor": 0,
5171b4c226SZixu Wang           "patch": 0
5271b4c226SZixu Wang         },
5371b4c226SZixu Wang         "name": "macosx"
5471b4c226SZixu Wang       },
5571b4c226SZixu Wang       "vendor": "apple"
5671b4c226SZixu Wang     }
5771b4c226SZixu Wang   },
58*28d79314SDaniel Grumberg   "relationships": [
5971b4c226SZixu Wang     {
6071b4c226SZixu Wang       "kind": "memberOf",
6171b4c226SZixu Wang       "source": "c:@E@Vehicle@Bicycle",
6271b4c226SZixu Wang       "target": "c:@E@Vehicle"
6371b4c226SZixu Wang     },
6471b4c226SZixu Wang     {
6571b4c226SZixu Wang       "kind": "memberOf",
6671b4c226SZixu Wang       "source": "c:@E@Vehicle@Car",
6771b4c226SZixu Wang       "target": "c:@E@Vehicle"
6871b4c226SZixu Wang     },
6971b4c226SZixu Wang     {
7071b4c226SZixu Wang       "kind": "memberOf",
7171b4c226SZixu Wang       "source": "c:@E@Vehicle@Train",
7271b4c226SZixu Wang       "target": "c:@E@Vehicle"
7371b4c226SZixu Wang     },
7471b4c226SZixu Wang     {
7571b4c226SZixu Wang       "kind": "memberOf",
7671b4c226SZixu Wang       "source": "c:@E@Vehicle@Ship",
7771b4c226SZixu Wang       "target": "c:@E@Vehicle"
7871b4c226SZixu Wang     },
7971b4c226SZixu Wang     {
8071b4c226SZixu Wang       "kind": "memberOf",
8171b4c226SZixu Wang       "source": "c:@E@Vehicle@Airplane",
8271b4c226SZixu Wang       "target": "c:@E@Vehicle"
8371b4c226SZixu Wang     },
8471b4c226SZixu Wang     {
8571b4c226SZixu Wang       "kind": "memberOf",
8671b4c226SZixu Wang       "source": "c:@E@Direction@North",
8771b4c226SZixu Wang       "target": "c:@E@Direction"
8871b4c226SZixu Wang     },
8971b4c226SZixu Wang     {
9071b4c226SZixu Wang       "kind": "memberOf",
9171b4c226SZixu Wang       "source": "c:@E@Direction@East",
9271b4c226SZixu Wang       "target": "c:@E@Direction"
9371b4c226SZixu Wang     },
9471b4c226SZixu Wang     {
9571b4c226SZixu Wang       "kind": "memberOf",
9671b4c226SZixu Wang       "source": "c:@E@Direction@South",
9771b4c226SZixu Wang       "target": "c:@E@Direction"
9871b4c226SZixu Wang     },
9971b4c226SZixu Wang     {
10071b4c226SZixu Wang       "kind": "memberOf",
10171b4c226SZixu Wang       "source": "c:@E@Direction@West",
10271b4c226SZixu Wang       "target": "c:@E@Direction"
10371b4c226SZixu Wang     }
10471b4c226SZixu Wang   ],
10571b4c226SZixu Wang   "symbols": [
10671b4c226SZixu Wang     {
107*28d79314SDaniel Grumberg       "accessLevel": "public",
10871b4c226SZixu Wang       "declarationFragments": [
10971b4c226SZixu Wang         {
11071b4c226SZixu Wang           "kind": "keyword",
11171b4c226SZixu Wang           "spelling": "enum"
11271b4c226SZixu Wang         },
11371b4c226SZixu Wang         {
11471b4c226SZixu Wang           "kind": "text",
11571b4c226SZixu Wang           "spelling": " "
11671b4c226SZixu Wang         },
11771b4c226SZixu Wang         {
11871b4c226SZixu Wang           "kind": "identifier",
11971b4c226SZixu Wang           "spelling": "Vehicle"
12071b4c226SZixu Wang         },
12171b4c226SZixu Wang         {
12271b4c226SZixu Wang           "kind": "text",
12371b4c226SZixu Wang           "spelling": ": "
12471b4c226SZixu Wang         },
12571b4c226SZixu Wang         {
12671b4c226SZixu Wang           "kind": "typeIdentifier",
12771b4c226SZixu Wang           "preciseIdentifier": "c:i",
12871b4c226SZixu Wang           "spelling": "unsigned int"
12971b4c226SZixu Wang         }
13071b4c226SZixu Wang       ],
13171b4c226SZixu Wang       "docComment": {
13271b4c226SZixu Wang         "lines": [
13371b4c226SZixu Wang           {
13471b4c226SZixu Wang             "range": {
13571b4c226SZixu Wang               "end": {
13671b4c226SZixu Wang                 "character": 22,
13771b4c226SZixu Wang                 "line": 1
13871b4c226SZixu Wang               },
13971b4c226SZixu Wang               "start": {
14071b4c226SZixu Wang                 "character": 5,
14171b4c226SZixu Wang                 "line": 1
14271b4c226SZixu Wang               }
14371b4c226SZixu Wang             },
14471b4c226SZixu Wang             "text": "Kinds of vehicles"
14571b4c226SZixu Wang           }
14671b4c226SZixu Wang         ]
14771b4c226SZixu Wang       },
14871b4c226SZixu Wang       "identifier": {
14971b4c226SZixu Wang         "interfaceLanguage": "c",
15071b4c226SZixu Wang         "precise": "c:@E@Vehicle"
15171b4c226SZixu Wang       },
15271b4c226SZixu Wang       "kind": {
15371b4c226SZixu Wang         "displayName": "Enumeration",
15471b4c226SZixu Wang         "identifier": "c.enum"
15571b4c226SZixu Wang       },
15671b4c226SZixu Wang       "location": {
157*28d79314SDaniel Grumberg         "position": {
15871b4c226SZixu Wang           "character": 6,
159*28d79314SDaniel Grumberg           "line": 2
160*28d79314SDaniel Grumberg         },
16171b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
16271b4c226SZixu Wang       },
16371b4c226SZixu Wang       "names": {
16471b4c226SZixu Wang         "subHeading": [
16571b4c226SZixu Wang           {
16671b4c226SZixu Wang             "kind": "identifier",
16771b4c226SZixu Wang             "spelling": "Vehicle"
16871b4c226SZixu Wang           }
16971b4c226SZixu Wang         ],
17071b4c226SZixu Wang         "title": "Vehicle"
171*28d79314SDaniel Grumberg       },
172*28d79314SDaniel Grumberg       "pathComponents": [
173*28d79314SDaniel Grumberg         "Vehicle"
174*28d79314SDaniel Grumberg       ]
17571b4c226SZixu Wang     },
17671b4c226SZixu Wang     {
177*28d79314SDaniel Grumberg       "accessLevel": "public",
17871b4c226SZixu Wang       "declarationFragments": [
17971b4c226SZixu Wang         {
18071b4c226SZixu Wang           "kind": "identifier",
18171b4c226SZixu Wang           "spelling": "Bicycle"
18271b4c226SZixu Wang         }
18371b4c226SZixu Wang       ],
18471b4c226SZixu Wang       "identifier": {
18571b4c226SZixu Wang         "interfaceLanguage": "c",
18671b4c226SZixu Wang         "precise": "c:@E@Vehicle@Bicycle"
18771b4c226SZixu Wang       },
18871b4c226SZixu Wang       "kind": {
18971b4c226SZixu Wang         "displayName": "Enumeration Case",
19071b4c226SZixu Wang         "identifier": "c.enum.case"
19171b4c226SZixu Wang       },
19271b4c226SZixu Wang       "location": {
193*28d79314SDaniel Grumberg         "position": {
19471b4c226SZixu Wang           "character": 3,
195*28d79314SDaniel Grumberg           "line": 3
196*28d79314SDaniel Grumberg         },
19771b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
19871b4c226SZixu Wang       },
19971b4c226SZixu Wang       "names": {
20071b4c226SZixu Wang         "subHeading": [
20171b4c226SZixu Wang           {
20271b4c226SZixu Wang             "kind": "identifier",
20371b4c226SZixu Wang             "spelling": "Bicycle"
20471b4c226SZixu Wang           }
20571b4c226SZixu Wang         ],
20671b4c226SZixu Wang         "title": "Bicycle"
207*28d79314SDaniel Grumberg       },
208*28d79314SDaniel Grumberg       "pathComponents": [
209*28d79314SDaniel Grumberg         "Vehicle",
210*28d79314SDaniel Grumberg         "Bicycle"
211*28d79314SDaniel Grumberg       ]
21271b4c226SZixu Wang     },
21371b4c226SZixu Wang     {
214*28d79314SDaniel Grumberg       "accessLevel": "public",
21571b4c226SZixu Wang       "declarationFragments": [
21671b4c226SZixu Wang         {
21771b4c226SZixu Wang           "kind": "identifier",
21871b4c226SZixu Wang           "spelling": "Car"
21971b4c226SZixu Wang         }
22071b4c226SZixu Wang       ],
22171b4c226SZixu Wang       "identifier": {
22271b4c226SZixu Wang         "interfaceLanguage": "c",
22371b4c226SZixu Wang         "precise": "c:@E@Vehicle@Car"
22471b4c226SZixu Wang       },
22571b4c226SZixu Wang       "kind": {
22671b4c226SZixu Wang         "displayName": "Enumeration Case",
22771b4c226SZixu Wang         "identifier": "c.enum.case"
22871b4c226SZixu Wang       },
22971b4c226SZixu Wang       "location": {
230*28d79314SDaniel Grumberg         "position": {
23171b4c226SZixu Wang           "character": 3,
232*28d79314SDaniel Grumberg           "line": 4
233*28d79314SDaniel Grumberg         },
23471b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
23571b4c226SZixu Wang       },
23671b4c226SZixu Wang       "names": {
23771b4c226SZixu Wang         "subHeading": [
23871b4c226SZixu Wang           {
23971b4c226SZixu Wang             "kind": "identifier",
24071b4c226SZixu Wang             "spelling": "Car"
24171b4c226SZixu Wang           }
24271b4c226SZixu Wang         ],
24371b4c226SZixu Wang         "title": "Car"
244*28d79314SDaniel Grumberg       },
245*28d79314SDaniel Grumberg       "pathComponents": [
246*28d79314SDaniel Grumberg         "Vehicle",
247*28d79314SDaniel Grumberg         "Car"
248*28d79314SDaniel Grumberg       ]
24971b4c226SZixu Wang     },
25071b4c226SZixu Wang     {
251*28d79314SDaniel Grumberg       "accessLevel": "public",
25271b4c226SZixu Wang       "declarationFragments": [
25371b4c226SZixu Wang         {
25471b4c226SZixu Wang           "kind": "identifier",
25571b4c226SZixu Wang           "spelling": "Train"
25671b4c226SZixu Wang         }
25771b4c226SZixu Wang       ],
25871b4c226SZixu Wang       "docComment": {
25971b4c226SZixu Wang         "lines": [
26071b4c226SZixu Wang           {
26171b4c226SZixu Wang             "range": {
26271b4c226SZixu Wang               "end": {
26371b4c226SZixu Wang                 "character": 45,
26471b4c226SZixu Wang                 "line": 5
26571b4c226SZixu Wang               },
26671b4c226SZixu Wang               "start": {
26771b4c226SZixu Wang                 "character": 15,
26871b4c226SZixu Wang                 "line": 5
26971b4c226SZixu Wang               }
27071b4c226SZixu Wang             },
27171b4c226SZixu Wang             "text": "Move this to the top! -Sheldon"
27271b4c226SZixu Wang           }
27371b4c226SZixu Wang         ]
27471b4c226SZixu Wang       },
27571b4c226SZixu Wang       "identifier": {
27671b4c226SZixu Wang         "interfaceLanguage": "c",
27771b4c226SZixu Wang         "precise": "c:@E@Vehicle@Train"
27871b4c226SZixu Wang       },
27971b4c226SZixu Wang       "kind": {
28071b4c226SZixu Wang         "displayName": "Enumeration Case",
28171b4c226SZixu Wang         "identifier": "c.enum.case"
28271b4c226SZixu Wang       },
28371b4c226SZixu Wang       "location": {
284*28d79314SDaniel Grumberg         "position": {
28571b4c226SZixu Wang           "character": 3,
286*28d79314SDaniel Grumberg           "line": 5
287*28d79314SDaniel Grumberg         },
28871b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
28971b4c226SZixu Wang       },
29071b4c226SZixu Wang       "names": {
29171b4c226SZixu Wang         "subHeading": [
29271b4c226SZixu Wang           {
29371b4c226SZixu Wang             "kind": "identifier",
29471b4c226SZixu Wang             "spelling": "Train"
29571b4c226SZixu Wang           }
29671b4c226SZixu Wang         ],
29771b4c226SZixu Wang         "title": "Train"
298*28d79314SDaniel Grumberg       },
299*28d79314SDaniel Grumberg       "pathComponents": [
300*28d79314SDaniel Grumberg         "Vehicle",
301*28d79314SDaniel Grumberg         "Train"
302*28d79314SDaniel Grumberg       ]
30371b4c226SZixu Wang     },
30471b4c226SZixu Wang     {
305*28d79314SDaniel Grumberg       "accessLevel": "public",
30671b4c226SZixu Wang       "declarationFragments": [
30771b4c226SZixu Wang         {
30871b4c226SZixu Wang           "kind": "identifier",
30971b4c226SZixu Wang           "spelling": "Ship"
31071b4c226SZixu Wang         }
31171b4c226SZixu Wang       ],
31271b4c226SZixu Wang       "identifier": {
31371b4c226SZixu Wang         "interfaceLanguage": "c",
31471b4c226SZixu Wang         "precise": "c:@E@Vehicle@Ship"
31571b4c226SZixu Wang       },
31671b4c226SZixu Wang       "kind": {
31771b4c226SZixu Wang         "displayName": "Enumeration Case",
31871b4c226SZixu Wang         "identifier": "c.enum.case"
31971b4c226SZixu Wang       },
32071b4c226SZixu Wang       "location": {
321*28d79314SDaniel Grumberg         "position": {
32271b4c226SZixu Wang           "character": 3,
323*28d79314SDaniel Grumberg           "line": 6
324*28d79314SDaniel Grumberg         },
32571b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
32671b4c226SZixu Wang       },
32771b4c226SZixu Wang       "names": {
32871b4c226SZixu Wang         "subHeading": [
32971b4c226SZixu Wang           {
33071b4c226SZixu Wang             "kind": "identifier",
33171b4c226SZixu Wang             "spelling": "Ship"
33271b4c226SZixu Wang           }
33371b4c226SZixu Wang         ],
33471b4c226SZixu Wang         "title": "Ship"
335*28d79314SDaniel Grumberg       },
336*28d79314SDaniel Grumberg       "pathComponents": [
337*28d79314SDaniel Grumberg         "Vehicle",
338*28d79314SDaniel Grumberg         "Ship"
339*28d79314SDaniel Grumberg       ]
34071b4c226SZixu Wang     },
34171b4c226SZixu Wang     {
342*28d79314SDaniel Grumberg       "accessLevel": "public",
34371b4c226SZixu Wang       "declarationFragments": [
34471b4c226SZixu Wang         {
34571b4c226SZixu Wang           "kind": "identifier",
34671b4c226SZixu Wang           "spelling": "Airplane"
34771b4c226SZixu Wang         }
34871b4c226SZixu Wang       ],
34971b4c226SZixu Wang       "identifier": {
35071b4c226SZixu Wang         "interfaceLanguage": "c",
35171b4c226SZixu Wang         "precise": "c:@E@Vehicle@Airplane"
35271b4c226SZixu Wang       },
35371b4c226SZixu Wang       "kind": {
35471b4c226SZixu Wang         "displayName": "Enumeration Case",
35571b4c226SZixu Wang         "identifier": "c.enum.case"
35671b4c226SZixu Wang       },
35771b4c226SZixu Wang       "location": {
358*28d79314SDaniel Grumberg         "position": {
35971b4c226SZixu Wang           "character": 3,
360*28d79314SDaniel Grumberg           "line": 7
361*28d79314SDaniel Grumberg         },
36271b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
36371b4c226SZixu Wang       },
36471b4c226SZixu Wang       "names": {
36571b4c226SZixu Wang         "subHeading": [
36671b4c226SZixu Wang           {
36771b4c226SZixu Wang             "kind": "identifier",
36871b4c226SZixu Wang             "spelling": "Airplane"
36971b4c226SZixu Wang           }
37071b4c226SZixu Wang         ],
37171b4c226SZixu Wang         "title": "Airplane"
372*28d79314SDaniel Grumberg       },
373*28d79314SDaniel Grumberg       "pathComponents": [
374*28d79314SDaniel Grumberg         "Vehicle",
375*28d79314SDaniel Grumberg         "Airplane"
376*28d79314SDaniel Grumberg       ]
37771b4c226SZixu Wang     },
37871b4c226SZixu Wang     {
379*28d79314SDaniel Grumberg       "accessLevel": "public",
38071b4c226SZixu Wang       "declarationFragments": [
38171b4c226SZixu Wang         {
38271b4c226SZixu Wang           "kind": "keyword",
38371b4c226SZixu Wang           "spelling": "enum"
38471b4c226SZixu Wang         },
38571b4c226SZixu Wang         {
38671b4c226SZixu Wang           "kind": "text",
38771b4c226SZixu Wang           "spelling": " "
38871b4c226SZixu Wang         },
38971b4c226SZixu Wang         {
39071b4c226SZixu Wang           "kind": "identifier",
39171b4c226SZixu Wang           "spelling": "Direction"
39271b4c226SZixu Wang         },
39371b4c226SZixu Wang         {
39471b4c226SZixu Wang           "kind": "text",
39571b4c226SZixu Wang           "spelling": ": "
39671b4c226SZixu Wang         },
39771b4c226SZixu Wang         {
39871b4c226SZixu Wang           "kind": "typeIdentifier",
39971b4c226SZixu Wang           "preciseIdentifier": "c:c",
40071b4c226SZixu Wang           "spelling": "unsigned char"
40171b4c226SZixu Wang         }
40271b4c226SZixu Wang       ],
40371b4c226SZixu Wang       "identifier": {
40471b4c226SZixu Wang         "interfaceLanguage": "c",
40571b4c226SZixu Wang         "precise": "c:@E@Direction"
40671b4c226SZixu Wang       },
40771b4c226SZixu Wang       "kind": {
40871b4c226SZixu Wang         "displayName": "Enumeration",
40971b4c226SZixu Wang         "identifier": "c.enum"
41071b4c226SZixu Wang       },
41171b4c226SZixu Wang       "location": {
412*28d79314SDaniel Grumberg         "position": {
41371b4c226SZixu Wang           "character": 6,
414*28d79314SDaniel Grumberg           "line": 10
415*28d79314SDaniel Grumberg         },
41671b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
41771b4c226SZixu Wang       },
41871b4c226SZixu Wang       "names": {
41971b4c226SZixu Wang         "subHeading": [
42071b4c226SZixu Wang           {
42171b4c226SZixu Wang             "kind": "identifier",
42271b4c226SZixu Wang             "spelling": "Direction"
42371b4c226SZixu Wang           }
42471b4c226SZixu Wang         ],
42571b4c226SZixu Wang         "title": "Direction"
426*28d79314SDaniel Grumberg       },
427*28d79314SDaniel Grumberg       "pathComponents": [
428*28d79314SDaniel Grumberg         "Direction"
429*28d79314SDaniel Grumberg       ]
43071b4c226SZixu Wang     },
43171b4c226SZixu Wang     {
432*28d79314SDaniel Grumberg       "accessLevel": "public",
43371b4c226SZixu Wang       "declarationFragments": [
43471b4c226SZixu Wang         {
43571b4c226SZixu Wang           "kind": "identifier",
43671b4c226SZixu Wang           "spelling": "North"
43771b4c226SZixu Wang         }
43871b4c226SZixu Wang       ],
43971b4c226SZixu Wang       "identifier": {
44071b4c226SZixu Wang         "interfaceLanguage": "c",
44171b4c226SZixu Wang         "precise": "c:@E@Direction@North"
44271b4c226SZixu Wang       },
44371b4c226SZixu Wang       "kind": {
44471b4c226SZixu Wang         "displayName": "Enumeration Case",
44571b4c226SZixu Wang         "identifier": "c.enum.case"
44671b4c226SZixu Wang       },
44771b4c226SZixu Wang       "location": {
448*28d79314SDaniel Grumberg         "position": {
44971b4c226SZixu Wang           "character": 3,
450*28d79314SDaniel Grumberg           "line": 11
451*28d79314SDaniel Grumberg         },
45271b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
45371b4c226SZixu Wang       },
45471b4c226SZixu Wang       "names": {
45571b4c226SZixu Wang         "subHeading": [
45671b4c226SZixu Wang           {
45771b4c226SZixu Wang             "kind": "identifier",
45871b4c226SZixu Wang             "spelling": "North"
45971b4c226SZixu Wang           }
46071b4c226SZixu Wang         ],
46171b4c226SZixu Wang         "title": "North"
462*28d79314SDaniel Grumberg       },
463*28d79314SDaniel Grumberg       "pathComponents": [
464*28d79314SDaniel Grumberg         "Direction",
465*28d79314SDaniel Grumberg         "North"
466*28d79314SDaniel Grumberg       ]
46771b4c226SZixu Wang     },
46871b4c226SZixu Wang     {
469*28d79314SDaniel Grumberg       "accessLevel": "public",
47071b4c226SZixu Wang       "declarationFragments": [
47171b4c226SZixu Wang         {
47271b4c226SZixu Wang           "kind": "identifier",
47371b4c226SZixu Wang           "spelling": "East"
47471b4c226SZixu Wang         }
47571b4c226SZixu Wang       ],
47671b4c226SZixu Wang       "identifier": {
47771b4c226SZixu Wang         "interfaceLanguage": "c",
47871b4c226SZixu Wang         "precise": "c:@E@Direction@East"
47971b4c226SZixu Wang       },
48071b4c226SZixu Wang       "kind": {
48171b4c226SZixu Wang         "displayName": "Enumeration Case",
48271b4c226SZixu Wang         "identifier": "c.enum.case"
48371b4c226SZixu Wang       },
48471b4c226SZixu Wang       "location": {
485*28d79314SDaniel Grumberg         "position": {
48671b4c226SZixu Wang           "character": 3,
487*28d79314SDaniel Grumberg           "line": 12
488*28d79314SDaniel Grumberg         },
48971b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
49071b4c226SZixu Wang       },
49171b4c226SZixu Wang       "names": {
49271b4c226SZixu Wang         "subHeading": [
49371b4c226SZixu Wang           {
49471b4c226SZixu Wang             "kind": "identifier",
49571b4c226SZixu Wang             "spelling": "East"
49671b4c226SZixu Wang           }
49771b4c226SZixu Wang         ],
49871b4c226SZixu Wang         "title": "East"
499*28d79314SDaniel Grumberg       },
500*28d79314SDaniel Grumberg       "pathComponents": [
501*28d79314SDaniel Grumberg         "Direction",
502*28d79314SDaniel Grumberg         "East"
503*28d79314SDaniel Grumberg       ]
50471b4c226SZixu Wang     },
50571b4c226SZixu Wang     {
506*28d79314SDaniel Grumberg       "accessLevel": "public",
50771b4c226SZixu Wang       "declarationFragments": [
50871b4c226SZixu Wang         {
50971b4c226SZixu Wang           "kind": "identifier",
51071b4c226SZixu Wang           "spelling": "South"
51171b4c226SZixu Wang         }
51271b4c226SZixu Wang       ],
51371b4c226SZixu Wang       "identifier": {
51471b4c226SZixu Wang         "interfaceLanguage": "c",
51571b4c226SZixu Wang         "precise": "c:@E@Direction@South"
51671b4c226SZixu Wang       },
51771b4c226SZixu Wang       "kind": {
51871b4c226SZixu Wang         "displayName": "Enumeration Case",
51971b4c226SZixu Wang         "identifier": "c.enum.case"
52071b4c226SZixu Wang       },
52171b4c226SZixu Wang       "location": {
522*28d79314SDaniel Grumberg         "position": {
52371b4c226SZixu Wang           "character": 3,
524*28d79314SDaniel Grumberg           "line": 13
525*28d79314SDaniel Grumberg         },
52671b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
52771b4c226SZixu Wang       },
52871b4c226SZixu Wang       "names": {
52971b4c226SZixu Wang         "subHeading": [
53071b4c226SZixu Wang           {
53171b4c226SZixu Wang             "kind": "identifier",
53271b4c226SZixu Wang             "spelling": "South"
53371b4c226SZixu Wang           }
53471b4c226SZixu Wang         ],
53571b4c226SZixu Wang         "title": "South"
536*28d79314SDaniel Grumberg       },
537*28d79314SDaniel Grumberg       "pathComponents": [
538*28d79314SDaniel Grumberg         "Direction",
539*28d79314SDaniel Grumberg         "South"
540*28d79314SDaniel Grumberg       ]
54171b4c226SZixu Wang     },
54271b4c226SZixu Wang     {
543*28d79314SDaniel Grumberg       "accessLevel": "public",
54471b4c226SZixu Wang       "declarationFragments": [
54571b4c226SZixu Wang         {
54671b4c226SZixu Wang           "kind": "identifier",
54771b4c226SZixu Wang           "spelling": "West"
54871b4c226SZixu Wang         }
54971b4c226SZixu Wang       ],
55071b4c226SZixu Wang       "identifier": {
55171b4c226SZixu Wang         "interfaceLanguage": "c",
55271b4c226SZixu Wang         "precise": "c:@E@Direction@West"
55371b4c226SZixu Wang       },
55471b4c226SZixu Wang       "kind": {
55571b4c226SZixu Wang         "displayName": "Enumeration Case",
55671b4c226SZixu Wang         "identifier": "c.enum.case"
55771b4c226SZixu Wang       },
55871b4c226SZixu Wang       "location": {
559*28d79314SDaniel Grumberg         "position": {
56071b4c226SZixu Wang           "character": 3,
561*28d79314SDaniel Grumberg           "line": 14
562*28d79314SDaniel Grumberg         },
56371b4c226SZixu Wang         "uri": "file://INPUT_DIR/input.h"
56471b4c226SZixu Wang       },
56571b4c226SZixu Wang       "names": {
56671b4c226SZixu Wang         "subHeading": [
56771b4c226SZixu Wang           {
56871b4c226SZixu Wang             "kind": "identifier",
56971b4c226SZixu Wang             "spelling": "West"
57071b4c226SZixu Wang           }
57171b4c226SZixu Wang         ],
57271b4c226SZixu Wang         "title": "West"
573*28d79314SDaniel Grumberg       },
574*28d79314SDaniel Grumberg       "pathComponents": [
575*28d79314SDaniel Grumberg         "Direction",
576*28d79314SDaniel Grumberg         "West"
577*28d79314SDaniel Grumberg       ]
57871b4c226SZixu Wang     }
57971b4c226SZixu Wang   ]
58071b4c226SZixu Wang }
581