Open meain opened 2 years ago
Latest commit has also seems to have introduced things like function.end
which gets combined optionally in ruby:
((method . name: (identifier) (method_parameters)? . (_) @function.inner (_)? @function.end .)
(#make-range! "function.inner" @function.inner @function.end)) @function.outer
((singleton_method . name: (identifier) (method_parameters)? . (_) @function.inner (_)? @function.end .)
(#make-range! "function.inner" @function.inner @function.end)) @function.outer
We have a few nodes which could have overriding definitions in the same match (example). We have to override the inner one with
.start
one if this is present.In the above case, we have to use
function.outer
iffunction.outer.start
is not available, but the latter otherwise and ignorefunction.outer
. We have to remove the first one as otherwise we will have two starts for the same function.