summaryrefslogtreecommitdiff
path: root/runtime/queries/julia/locals.scm
blob: d5ac794e86f144ee1739b196dea583142506c122 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
(import_statement
 (identifier) @definition.import)
(variable_declaration
 (identifier) @local.definition)
(variable_declaration
 (tuple_expression
  (identifier) @local.definition))
(for_binding
 (identifier) @local.definition)
(for_binding
 (tuple_expression
  (identifier) @local.definition))

(assignment_expression
 (tuple_expression
  (identifier) @local.definition))
(assignment_expression
 (bare_tuple_expression
  (identifier) @local.definition))
(assignment_expression
 (identifier) @local.definition)

(type_parameter_list
  (identifier) @definition.type)
(type_argument_list
  (identifier) @definition.type)
(struct_definition
  name: (identifier) @definition.type)

(parameter_list
 (identifier) @definition.parameter)
(typed_parameter
 (identifier) @definition.parameter
 (identifier))
(function_expression
 . (identifier) @definition.parameter)
(argument_list
 (typed_expression
  (identifier) @definition.parameter
  (identifier)))
(spread_parameter
 (identifier) @definition.parameter)

(function_definition
 name: (identifier) @definition.function) @local.scope
(macro_definition 
 name: (identifier) @definition.macro) @local.scope

(identifier) @local.reference

[
  (try_statement)
  (finally_clause)
  (quote_statement)
  (let_statement)
  (compound_expression)
  (for_statement)
] @local.scope