Reverse syntax highlighting query precedence ordering

pull/9463/head
Michael Davis 9 months ago
parent 87a720c3a1
commit 4989f3b1fb
No known key found for this signature in database

@ -2330,15 +2330,17 @@ impl<'a> Iterator for HighlightIter<'a> {
}
}
// Once a highlighting pattern is found for the current node, skip over
// any later highlighting patterns that also match this node. Captures
// Use the last capture found for the current node, skipping over any
// highlight patterns that also match this node. Captures
// for a given node are ordered by pattern index, so these subsequent
// captures are guaranteed to be for highlighting, not injections or
// local variables.
while let Some((next_match, next_capture_index)) = captures.peek() {
let next_capture = next_match.captures[*next_capture_index];
if next_capture.node == capture.node {
captures.next();
match_.remove();
capture = next_capture;
match_ = captures.next().unwrap().0;
} else {
break;
}

Loading…
Cancel
Save