mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-04 12:30:01 -04:00
46 lines
1 KiB
Scheme
46 lines
1 KiB
Scheme
|
|
;;; DECLARATIONS AND SCOPES
|
||
|
|
|
||
|
|
;; Variable and field declarations
|
||
|
|
((variable_declarator
|
||
|
|
(identifier) @definition)
|
||
|
|
(set! kind "v"))
|
||
|
|
|
||
|
|
((variable_declarator
|
||
|
|
(field_expression object:(*) @definition.associated (property_identifier) @definition))
|
||
|
|
(set! kind "v"))
|
||
|
|
|
||
|
|
;; Parameters
|
||
|
|
((local_function
|
||
|
|
(parameters (identifier) @definition))
|
||
|
|
(set! kind "v"))
|
||
|
|
((function
|
||
|
|
(parameters (identifier) @definition))
|
||
|
|
(set! kind "v"))
|
||
|
|
|
||
|
|
;; Function definitions
|
||
|
|
;; Functions definitions creates both a definition and a new scope
|
||
|
|
((function
|
||
|
|
(function_name_field
|
||
|
|
object: (identifier) @definition.associated
|
||
|
|
(property_identifier) @definition)) @scope
|
||
|
|
(set! kind "m"))
|
||
|
|
|
||
|
|
((function
|
||
|
|
(function_name (identifier) @definition)) @scope
|
||
|
|
(set! kind "f"))
|
||
|
|
|
||
|
|
((local_function
|
||
|
|
(identifier) @definition) @scope
|
||
|
|
(set! kind "f"))
|
||
|
|
|
||
|
|
((if_statement) @scope)
|
||
|
|
((for_in_statement) @scope)
|
||
|
|
((repeat_statement) @scope)
|
||
|
|
;; Loops
|
||
|
|
((loop_expression
|
||
|
|
(identifier) @definition)
|
||
|
|
(set! kind "v"))
|
||
|
|
|
||
|
|
;;; REFERENCES
|
||
|
|
((identifier) @reference)
|