aboutsummaryrefslogtreecommitdiffstats
path: root/queries/gdscript/locals.scm
diff options
context:
space:
mode:
Diffstat (limited to 'queries/gdscript/locals.scm')
-rw-r--r--queries/gdscript/locals.scm117
1 files changed, 73 insertions, 44 deletions
diff --git a/queries/gdscript/locals.scm b/queries/gdscript/locals.scm
index ebcda4f7d..83a1b4433 100644
--- a/queries/gdscript/locals.scm
+++ b/queries/gdscript/locals.scm
@@ -1,5 +1,4 @@
-;; Scopes
-
+; Scopes
[
(if_statement)
(elif_clause)
@@ -16,77 +15,107 @@
(set_body)
] @local.scope
-;; Parameters
+; Parameters
+(parameters
+ (identifier) @local.definition.parameter)
+
+(default_parameter
+ (identifier) @local.definition.parameter)
-(parameters (identifier) @local.definition.parameter)
-(default_parameter (identifier) @local.definition.parameter)
-(typed_parameter (identifier) @local.definition.parameter)
-(typed_default_parameter (identifier) @local.definition.parameter)
+(typed_parameter
+ (identifier) @local.definition.parameter)
-;; Signals
+(typed_default_parameter
+ (identifier) @local.definition.parameter)
+; Signals
; Can gdscript 2 signals be considered fields?
-(signal_statement (name) @local.definition.field)
+(signal_statement
+ (name) @local.definition.field)
-;; Variable Definitions
+; Variable Definitions
+(const_statement
+ (name) @local.definition.constant)
-(const_statement (name) @local.definition.constant)
; onready and export variations are only properties.
-(variable_statement (name) @local.definition.var)
+(variable_statement
+ (name) @local.definition.var)
(setter) @local.reference
-(getter) @local.reference
-
-;; Function Definition
-((function_definition (name) @local.definition.function)
- (#set! "definition.function.scope" "parent"))
+(getter) @local.reference
-;; Lambda
+; Function Definition
+((function_definition
+ (name) @local.definition.function)
+ (#set! "definition.function.scope" "parent"))
+; Lambda
; lambda names are not accessible and are only for debugging.
-(lambda (name) @local.definition.function)
+(lambda
+ (name) @local.definition.function)
-;; Source
+; Source
+(class_name_statement
+ (name) @local.definition.type)
-(class_name_statement (name) @local.definition.type)
+(source
+ (variable_statement
+ (name) @local.definition.field))
-(source (variable_statement (name) @local.definition.field))
-(source (onready_variable_statement (name) @local.definition.field))
-(source (export_variable_statement (name) @local.definition.field))
+(source
+ (onready_variable_statement
+ (name) @local.definition.field))
-;; Class
+(source
+ (export_variable_statement
+ (name) @local.definition.field))
-((class_definition (name) @local.definition.type)
- (#set! "definition.type.scope" "parent"))
+; Class
+((class_definition
+ (name) @local.definition.type)
+ (#set! "definition.type.scope" "parent"))
(class_definition
- (body (variable_statement (name) @local.definition.field)))
+ (body
+ (variable_statement
+ (name) @local.definition.field)))
+
(class_definition
- (body (onready_variable_statement (name) @local.definition.field)))
+ (body
+ (onready_variable_statement
+ (name) @local.definition.field)))
+
(class_definition
- (body (export_variable_statement (name) @local.definition.field)))
+ (body
+ (export_variable_statement
+ (name) @local.definition.field)))
+
(class_definition
- (body (signal_statement (name) @local.definition.field)))
+ (body
+ (signal_statement
+ (name) @local.definition.field)))
; Although a script is also a class, let's only define functions in an inner class as
; methods.
((class_definition
- (body (function_definition (name) @local.definition.method)))
- (#set! "definition.method.scope" "parent"))
-
-;; Enum
-
-((enum_definition (name) @local.definition.enum))
-
-;; Repeat
-
-(for_statement . (identifier) @local.definition.var)
+ (body
+ (function_definition
+ (name) @local.definition.method)))
+ (#set! "definition.method.scope" "parent"))
-;; Match Statement
+; Enum
+((enum_definition
+ (name) @local.definition.enum))
-(pattern_binding (identifier) @local.definition.var)
+; Repeat
+(for_statement
+ .
+ (identifier) @local.definition.var)
-;; References
+; Match Statement
+(pattern_binding
+ (identifier) @local.definition.var)
+; References
(identifier) @local.reference