Constant tree_sitter_starlark::LOCALS_QUERY
source ยท pub const LOCALS_QUERY: &str = ";;; Program structure\n(module) @scope\n\n; Function with parameters, defines parameters\n(parameters\n (identifier) @definition.parameter)\n\n(default_parameter\n (identifier) @definition.parameter)\n\n(typed_parameter\n (identifier) @definition.parameter)\n\n(typed_default_parameter\n (identifier) @definition.parameter)\n\n; *args parameter\n(parameters\n (list_splat_pattern\n (identifier) @definition.parameter))\n\n; **kwargs parameter\n(parameters\n (dictionary_splat_pattern\n (identifier) @definition.parameter))\n\n; Function defines function and scope\n((function_definition\n name: (identifier) @definition.function) @scope\n (#set! definition.function.scope \"parent\"))\n\n;;; Loops\n; not a scope!\n(for_statement\n left: (pattern_list\n (identifier) @definition.var))\n(for_statement\n left: (tuple_pattern\n (identifier) @definition.var))\n(for_statement\n left: (identifier) @definition.var)\n\n; for in list comprehension\n(for_in_clause\n left: (identifier) @definition.var)\n(for_in_clause\n left: (tuple_pattern\n (identifier) @definition.var))\n(for_in_clause\n left: (pattern_list\n (identifier) @definition.var))\n\n(dictionary_comprehension) @scope\n(list_comprehension) @scope\n(set_comprehension) @scope\n\n;;; Assignments\n\n(assignment\n left: (identifier) @definition.var)\n\n(assignment\n left: (pattern_list\n (identifier) @definition.var))\n(assignment\n left: (tuple_pattern\n (identifier) @definition.var))\n\n(assignment\n left: (attribute\n (identifier)\n (identifier) @definition.field))\n\n; Walrus operator x := 1\n(named_expression\n (identifier) @definition.var)\n\n(as_pattern \n alias: (as_pattern_target) @definition.var)\n\n;;; REFERENCES\n(identifier) @reference\n\n;; Starlark-specific\n\n; Loads\n((call\n function: (identifier) @_fn\n arguments: (argument_list\n (string) @definition.import))\n (#eq? @_fn \"load\"))\n";
Expand description
The symbol tagging query for this language.