diff options
Diffstat (limited to 'queries/java/locals.scm')
| -rw-r--r-- | queries/java/locals.scm | 54 |
1 files changed, 33 insertions, 21 deletions
diff --git a/queries/java/locals.scm b/queries/java/locals.scm index 5de5f5ff5..ac0715c93 100644 --- a/queries/java/locals.scm +++ b/queries/java/locals.scm @@ -1,56 +1,62 @@ -;; SCOPES - +; SCOPES ; declarations - (program) @local.scope + (class_declaration body: (_) @local.scope) + (record_declaration body: (_) @local.scope) + (enum_declaration body: (_) @local.scope) + (lambda_expression) @local.scope + (enhanced_for_statement) @local.scope ; block - (block) @local.scope ; if/else - (if_statement) @local.scope ; if+else + (if_statement consequence: (_) @local.scope) ; if body in case there are no braces + (if_statement alternative: (_) @local.scope) ; else body in case there are no braces ; try/catch - (try_statement) @local.scope ; covers try+catch, individual try and catch are covered by (block) + (catch_clause) @local.scope ; needed because `Exception` variable ; loops - (for_statement) @local.scope ; whole for_statement because loop iterator variable -(for_statement ; "for" body in case there are no braces + +(for_statement + ; "for" body in case there are no braces body: (_) @local.scope) + (do_statement body: (_) @local.scope) + (while_statement body: (_) @local.scope) ; Functions - (constructor_declaration) @local.scope -(method_declaration) @local.scope -;; DEFINITIONS +(method_declaration) @local.scope +; DEFINITIONS (package_declaration (identifier) @local.definition.namespace) (class_declaration name: (identifier) @local.definition.type) + (record_declaration name: (identifier) @local.definition.type) @@ -61,30 +67,36 @@ name: (identifier) @local.definition.method) (local_variable_declaration - declarator: (variable_declarator - name: (identifier) @local.definition.var)) -(enhanced_for_statement ; for (var item : items) { + declarator: + (variable_declarator + name: (identifier) @local.definition.var)) + +(enhanced_for_statement + ; for (var item : items) { name: (identifier) @local.definition.var) (formal_parameter name: (identifier) @local.definition.parameter) + (catch_formal_parameter name: (identifier) @local.definition.parameter) -(inferred_parameters (identifier) @local.definition.parameter) ; (x,y) -> ... +(inferred_parameters + (identifier) @local.definition.parameter) ; (x,y) -> ... + (lambda_expression - parameters: (identifier) @local.definition.parameter) ; x -> ... + parameters: (identifier) @local.definition.parameter) ; x -> ... ((scoped_identifier (identifier) @local.definition.import) - (#has-ancestor? @local.definition.import import_declaration)) + (#has-ancestor? @local.definition.import import_declaration)) (field_declaration - declarator: (variable_declarator - name: (identifier) @local.definition.field)) - -;; REFERENCES + declarator: + (variable_declarator + name: (identifier) @local.definition.field)) +; REFERENCES (identifier) @local.reference (type_identifier) @local.reference |
