From a4b10b60c16ca141ca1dae538479889dd6932270 Mon Sep 17 00:00:00 2001 From: Sergio Alejandro Vargas Date: Wed, 2 Nov 2022 16:21:44 -0500 Subject: [PATCH] refactor julia locals --- queries/julia/locals.scm | 96 +++++++++++++++++++++++++--------------- 1 file changed, 60 insertions(+), 36 deletions(-) diff --git a/queries/julia/locals.scm b/queries/julia/locals.scm index f8b34f71d..09b18cf77 100644 --- a/queries/julia/locals.scm +++ b/queries/julia/locals.scm @@ -1,59 +1,83 @@ +;;; Variables +(assignment_expression + (identifier) @definition.var) +(assignment_expression + (tuple_expression + (identifier) @definition.var)) +(assignment_expression + (bare_tuple_expression + (identifier) @definition.var)) -(import_statement - (identifier) @definition.import) + +;;; let/const bindings (variable_declaration (identifier) @definition.var) (variable_declaration (tuple_expression (identifier) @definition.var)) -(for_binding - (identifier) @definition.var) -(for_binding - (tuple_expression - (identifier) @definition.var)) -(assignment_expression - (tuple_expression - (identifier) @definition.var)) -(assignment_expression - (bare_tuple_expression - (identifier) @definition.var)) -(assignment_expression - (identifier) @definition.var) + +;;; For bindings +(for_binding + (identifier) @definition.var) +(for_binding + (tuple_expression + (identifier) @definition.var)) + + +;;; Types + +(struct_definition + name: (identifier) @definition.type) +(abstract_definition + name: (identifier) @definition.type) +(abstract_definition + name: (identifier) @definition.type) (type_parameter_list (identifier) @definition.type) -(type_argument_list - (identifier) @definition.type) -(struct_definition - name: (identifier) @definition.type) + +;;; Module imports + +(import_statement + (identifier) @definition.import) + + +;;; Parameters (parameter_list - (identifier) @definition.parameter) + (identifier) @definition.parameter) +(optional_parameter . + (identifier) @definition.parameter) +(slurp_parameter + (identifier) @definition.parameter) + (typed_parameter - (identifier) @definition.parameter - (identifier)) + parameter: (identifier) @definition.parameter + (_)) + (function_expression - . (identifier) @definition.parameter) -(argument_list - (typed_expression - (identifier) @definition.parameter - (identifier))) -(spread_parameter - (identifier) @definition.parameter) + . (identifier) @definition.parameter) ;; Single parameter arrow function + + +;;; Function/macro definitions (function_definition - name: (identifier) @definition.function) @scope + name: (identifier) @definition.function) @scope +(short_function_definition + name: (identifier) @definition.function) @scope (macro_definition - name: (identifier) @definition.macro) @scope + name: (identifier) @definition.macro) @scope (identifier) @reference [ - (try_statement) - (finally_clause) - (quote_statement) - (let_statement) - (compound_expression) (for_statement) + (while_statement) + (try_statement) + (catch_clause) + (finally_clause) + (let_statement) + (quote_statement) + (do_clause) ] @scope