85 lines
1.3 KiB
Scheme
85 lines
1.3 KiB
Scheme
![]() |
; "Classes"
|
||
|
(VarDecl
|
||
|
(_
|
||
|
(_
|
||
|
(ContainerDecl) @class.inner))) @class.outer
|
||
|
|
||
|
; functions
|
||
|
(_
|
||
|
(FnProto)
|
||
|
(Block) @function.inner) @function.outer
|
||
|
|
||
|
; loops
|
||
|
(_
|
||
|
(ForPrefix)
|
||
|
(_) @loop.inner) @loop.outer
|
||
|
|
||
|
(_
|
||
|
(WhilePrefix)
|
||
|
(_) @loop.inner) @loop.outer
|
||
|
|
||
|
; blocks
|
||
|
(_
|
||
|
(Block) @block.inner) @block.outer
|
||
|
|
||
|
; statements
|
||
|
(Statement) @statement.outer
|
||
|
|
||
|
; parameters
|
||
|
((ParamDeclList
|
||
|
"," @_start
|
||
|
.
|
||
|
(ParamDecl) @parameter.inner)
|
||
|
(#make-range! "parameter.outer" @_start @parameter.inner))
|
||
|
|
||
|
((ParamDeclList
|
||
|
.
|
||
|
(ParamDecl) @parameter.inner
|
||
|
.
|
||
|
","? @_end)
|
||
|
(#make-range! "parameter.outer" @parameter.inner @_end))
|
||
|
|
||
|
; arguments
|
||
|
((FnCallArguments
|
||
|
"," @_start
|
||
|
.
|
||
|
(_) @parameter.inner)
|
||
|
(#make-range! "parameter.outer" @_start @parameter.inner))
|
||
|
|
||
|
((FnCallArguments
|
||
|
.
|
||
|
(_) @parameter.inner
|
||
|
.
|
||
|
","? @_end)
|
||
|
(#make-range! "parameter.outer" @parameter.inner @_end))
|
||
|
|
||
|
; comments
|
||
|
(doc_comment) @comment.outer
|
||
|
|
||
|
(line_comment) @comment.outer
|
||
|
|
||
|
; conditionals
|
||
|
(_
|
||
|
(IfPrefix)
|
||
|
(_) @conditional.inner) @conditional.outer
|
||
|
|
||
|
((SwitchExpr
|
||
|
"{" @_start
|
||
|
"}" @_end)
|
||
|
(#make-range! "conditional.inner" @_start @_end)) @conditional.outer
|
||
|
|
||
|
; calls
|
||
|
(_
|
||
|
(FnCallArguments)) @call.outer
|
||
|
|
||
|
(_
|
||
|
(FnCallArguments
|
||
|
.
|
||
|
"("
|
||
|
.
|
||
|
(_) @_start
|
||
|
(_)? @_end
|
||
|
.
|
||
|
")"
|
||
|
(#make-range! "call.inner" @_start @_end)))
|