diff options
Diffstat (limited to 'queries/java')
| -rw-r--r-- | queries/java/locals.scm | 71 |
1 files changed, 65 insertions, 6 deletions
diff --git a/queries/java/locals.scm b/queries/java/locals.scm index 56c629f4e..4c19e4644 100644 --- a/queries/java/locals.scm +++ b/queries/java/locals.scm @@ -1,10 +1,69 @@ -; CREDITS @maxbrunsfeld (maxbrunsfeld@gmail.com) - +; SCOPES +; declarations +(program) @scope (class_declaration - name: (identifier) @name) @class + body: (_) @scope) +(enum_declaration + body: (_) @scope) +(method_declaration) @scope ; whole method_declaration because arguments + +; block +(block) @scope + +; if/else +(if_statement) @scope ; if+else +(if_statement + consequence: (_) @scope) ; if body in case there are no braces +(if_statement + alternative: (_) @scope) ; else body in case there are no braces + +; try/catch +(try_statement) @scope ; covers try+catch, individual try and catch are covered by (block) +(catch_clause) @scope ; needed because `Exception` variable +; loops +(for_statement) @scope ; whole for_statement because loop iterator variable +(for_statement ; "for" body in case there are no braces + body: (_) @scope) +(do_statement + body: (_) @scope) +(while_statement + body: (_) @scope) + +; Functions + +(constructor_declaration) @scope (method_declaration |
