nvim-treesitter/queries/julia/locals.scm

67 lines
1.2 KiB
Scheme
Raw Normal View History

2024-01-06 15:05:50 +09:00
; Variables
(assignment
(identifier) @local.definition.var)
2024-01-06 15:05:50 +09:00
(assignment
2022-11-02 16:21:44 -05:00
(tuple_expression
(identifier) @local.definition.var))
2022-11-02 16:21:44 -05:00
2024-01-06 15:05:50 +09:00
; let/const bindings
(let_binding
2024-01-06 15:05:50 +09:00
(identifier) @local.definition.var)
2022-11-02 16:21:44 -05:00
2024-01-06 15:05:50 +09:00
(let_binding
(tuple_expression
(identifier) @local.definition.var))
2022-11-02 16:21:44 -05:00
2024-01-06 15:05:50 +09:00
; For bindings
(for_binding
(identifier) @local.definition.var)
2024-01-06 15:05:50 +09:00
(for_binding
2022-11-02 16:21:44 -05:00
(tuple_expression
(identifier) @local.definition.var))
2024-01-06 15:05:50 +09:00
; Types
(struct_definition
name: (identifier) @local.definition.type)
2024-01-06 15:05:50 +09:00
2022-11-02 16:21:44 -05:00
(abstract_definition
name: (identifier) @local.definition.type)
2024-01-06 15:05:50 +09:00
2022-11-02 16:21:44 -05:00
(abstract_definition
name: (identifier) @local.definition.type)
2022-11-02 16:21:44 -05:00
(type_parameter_list
(identifier) @local.definition.type)
2022-11-02 16:21:44 -05:00
2024-01-06 15:05:50 +09:00
; Module imports
2022-11-02 16:21:44 -05:00
(import_statement
(identifier) @local.definition.import)
2022-11-02 16:21:44 -05:00
2024-01-06 15:05:50 +09:00
; Function/macro definitions
(function_definition
(signature
(call_expression
.
(identifier) @local.definition.function))) @local.scope
2024-01-06 15:05:50 +09:00
(macro_definition
(signature
(call_expression
.
(identifier) @local.definition.function))) @local.scope
(identifier) @local.reference
[
2022-11-02 16:21:44 -05:00
(for_statement)
(while_statement)
(try_statement)
2022-11-02 16:21:44 -05:00
(catch_clause)
(finally_clause)
(let_statement)
2022-11-02 16:21:44 -05:00
(quote_statement)
(do_clause)
] @local.scope