108 lines
1.9 KiB
Scheme
108 lines
1.9 KiB
Scheme
(class_declaration
|
|
body: (class_body) @class.inner) @class.outer
|
|
|
|
(method_declaration) @function.outer
|
|
|
|
(method_declaration
|
|
body: (block
|
|
.
|
|
"{"
|
|
.
|
|
(_) @_start @_end
|
|
(_)? @_end
|
|
.
|
|
"}"
|
|
(#make-range! "function.inner" @_start @_end)))
|
|
|
|
(constructor_declaration) @function.outer
|
|
|
|
(constructor_declaration
|
|
body: (constructor_body
|
|
.
|
|
"{"
|
|
.
|
|
(_) @_start @_end
|
|
(_)? @_end
|
|
.
|
|
"}"
|
|
(#make-range! "function.inner" @_start @_end)))
|
|
|
|
(for_statement
|
|
body: (_)? @loop.inner) @loop.outer
|
|
|
|
(enhanced_for_statement
|
|
body: (_)? @loop.inner) @loop.outer
|
|
|
|
(while_statement
|
|
body: (_)? @loop.inner) @loop.outer
|
|
|
|
(do_statement
|
|
body: (_)? @loop.inner) @loop.outer
|
|
|
|
(if_statement
|
|
condition: (_
|
|
(parenthesized_expression) @conditional.inner) @conditional.outer)
|
|
|
|
(if_statement
|
|
consequence: (_)? @conditional.inner
|
|
alternative: (_)? @conditional.inner) @conditional.outer
|
|
|
|
(switch_expression
|
|
body: (_)? @conditional.inner) @conditional.outer
|
|
|
|
; blocks
|
|
(block) @block.outer
|
|
|
|
(method_invocation) @call.outer
|
|
|
|
(method_invocation
|
|
arguments: (argument_list
|
|
.
|
|
"("
|
|
.
|
|
(_) @_start
|
|
(_)? @_end
|
|
.
|
|
")"
|
|
(#make-range! "call.inner" @_start @_end)))
|
|
|
|
; parameters
|
|
(formal_parameters
|
|
"," @_start
|
|
.
|
|
(formal_parameter) @parameter.inner
|
|
(#make-range! "parameter.outer" @_start @parameter.inner))
|
|
|
|
(formal_parameters
|
|
.
|
|
(formal_parameter) @parameter.inner
|
|
.
|
|
","? @_end
|
|
(#make-range! "parameter.outer" @parameter.inner @_end))
|
|
|
|
(argument_list
|
|
"," @_start
|
|
.
|
|
(_) @parameter.inner
|
|
(#make-range! "parameter.outer" @_start @parameter.inner))
|
|
|
|
(argument_list
|
|
.
|
|
(_) @parameter.inner
|
|
.
|
|
","? @_end
|
|
(#make-range! "parameter.outer" @parameter.inner @_end))
|
|
|
|
[
|
|
(line_comment)
|
|
(block_comment)
|
|
] @comment.outer
|
|
|
|
[
|
|
(decimal_integer_literal)
|
|
(decimal_floating_point_literal)
|
|
(hex_integer_literal)
|
|
(binary_integer_literal)
|
|
(octal_integer_literal)
|
|
] @number.inner
|