nvim-treesitter/queries/elixir/locals.scm
2021-05-18 19:10:06 +02:00

95 lines
2.2 KiB
Scheme

[
(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 "^[^_]"))