mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-13 08:50:11 -04:00
Initial Elixir support
This commit is contained in:
parent
506e998da2
commit
e7e1db38cd
6 changed files with 323 additions and 0 deletions
95
queries/elixir/locals.scm
Normal file
95
queries/elixir/locals.scm
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
[
|
||||
(after_block)
|
||||
(catch_block)
|
||||
(do_block)
|
||||
(stab_expression)
|
||||
(rescue_block)
|
||||
] @scope
|
||||
|
||||
(identifier) @reference
|
||||
|
||||
(call
|
||||
function: (function_identifier) @_call-name
|
||||
(module) @definition.type
|
||||
(#eq? @_call-name "defmodule"))
|
||||
|
||||
(call
|
||||
function: (function_identifier) @_call-name
|
||||
(call
|
||||
function: (function_identifier) @definition.function)
|
||||
(#lua-match? @_call-name "^defp?$"))
|
||||
|
||||
(call
|
||||
function: (function_identifier) @_call-name
|
||||
(call
|
||||
function: (function_identifier) @definition.function
|
||||
(arguments
|
||||
[(identifier) @definition.parameter
|
||||
(tuple
|
||||
(identifier) @definition.parameter)
|
||||
(list
|
||||
(identifier) @definition.parameter)
|
||||
(map
|
||||
(keyword_list
|
||||
(identifier) @definition.parameter))
|
||||
(struct
|
||||
(keyword_list
|
||||
(identifier) @definition.parameter))
|
||||
(binary_op
|
||||
left: (identifier) @definition.parameter
|
||||
operator: "\\\\")]
|
||||
(#lua-match? @definition.parameter "^[^_]")))
|
||||
(#lua-match? @_call-name "^defp?$"))
|
||||
|
||||
(call
|
||||
function: (function_identifier) @_call-name
|
||||
(binary_op
|
||||
left: (call
|
||||
function: (function_identifier) @definition.function
|
||||
(arguments
|
||||
[(identifier) @definition.parameter
|
||||
(tuple
|
||||
(identifier) @definition.parameter)
|
||||
(list
|
||||
(identifier) @definition.parameter)
|
||||
(map
|
||||
(keyword_list
|
||||
(identifier) @definition.parameter))
|
||||
(struct
|
||||
(keyword_list
|
||||
(identifier) @definition.parameter))]
|
||||
(#lua-match? @definition.parameter "^[^_]")))
|
||||
operator: "when")
|
||||
(#lua-match? @_call-name "^defp?$"))
|
||||
|
||||
(binary_op
|
||||
left:
|
||||
[(identifier) @definition.var
|
||||
(tuple
|
||||
(identifier) @definition.var)
|
||||
(list
|
||||
(identifier) @definition.var)
|
||||
(map
|
||||
(keyword_list
|
||||
(identifier) @definition.var))
|
||||
(struct
|
||||
(keyword_list
|
||||
(identifier) @definition.var))]
|
||||
operator: "="
|
||||
(#lua-match? @definition.var "^[^_]"))
|
||||
|
||||
(stab_expression
|
||||
left:
|
||||
(bare_arguments
|
||||
[(identifier) @definition.var
|
||||
(tuple
|
||||
(identifier) @definition.var)
|
||||
(list
|
||||
(identifier) @definition.var)
|
||||
(map
|
||||
(keyword_list
|
||||
(identifier) @definition.var))
|
||||
(struct
|
||||
(keyword_list
|
||||
(identifier) @definition.var))])
|
||||
(#lua-match? @definition.var "^[^_]"))
|
||||
Loading…
Add table
Add a link
Reference in a new issue