outline.scm

 1(preproc_def
 2  "#define" @context
 3  name: (_) @name) @item
 4
 5(preproc_function_def
 6  "#define" @context
 7  name: (_) @name
 8  parameters: (preproc_params
 9    "(" @context
10    ")" @context)) @item
11
12(struct_specifier
13  "struct" @context
14  name: (_) @name) @item
15
16(union_specifier
17  "union" @context
18  name: (_) @name) @item
19
20(enum_specifier
21  "enum" @context
22  name: (_) @name) @item
23
24(enumerator
25  name: (_) @name) @item
26
27(field_declaration
28  type: (_) @context
29  declarator: (field_identifier) @name) @item
30
31(type_definition
32  "typedef" @context
33  declarator: (_) @name) @item
34
35(declaration
36  (type_qualifier)? @context
37  type: (_)? @context
38  declarator: [
39    (function_declarator
40      declarator: (_) @name
41      parameters: (parameter_list
42        "(" @context
43        ")" @context))
44    (pointer_declarator
45      "*" @context
46      declarator: (function_declarator
47        declarator: (_) @name
48        parameters: (parameter_list
49          "(" @context
50          ")" @context)))
51    (pointer_declarator
52      "*" @context
53      declarator: (pointer_declarator
54        "*" @context
55        declarator: (function_declarator
56          declarator: (_) @name
57          parameters: (parameter_list
58            "(" @context
59            ")" @context))))
60  ]) @item
61
62(function_definition
63  (type_qualifier)? @context
64  type: (_)? @context
65  declarator: [
66    (function_declarator
67      declarator: (_) @name
68      parameters: (parameter_list
69        "(" @context
70        ")" @context))
71    (pointer_declarator
72      "*" @context
73      declarator: (function_declarator
74        declarator: (_) @name
75        parameters: (parameter_list
76          "(" @context
77          ")" @context)))
78    (pointer_declarator
79      "*" @context
80      declarator: (pointer_declarator
81        "*" @context
82        declarator: (function_declarator
83          declarator: (_) @name
84          parameters: (parameter_list
85            "(" @context
86            ")" @context))))
87  ]) @item
88
89(comment) @annotation