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)))
|