Merge pull request #22080 from lierdakil/fix-tree-sitter-highlight-iterator-2

Fix tree-sitter-language-mode null highlight iterators
This commit is contained in:
Sadick 2021-04-09 18:09:35 +03:00 committed by GitHub
commit 2a0103d440
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 22 additions and 3 deletions

View File

@ -145,7 +145,7 @@ class TreeSitterLanguageMode {
*/
buildHighlightIterator() {
if (!this.rootLanguageLayer) return new NullHighlightIterator();
if (!this.rootLanguageLayer) return new NullLanguageModeHighlightIterator();
return new HighlightIterator(this);
}
@ -651,7 +651,7 @@ class LanguageLayer {
if (this.tree) {
return new LayerHighlightIterator(this, this.tree.walk());
} else {
return new NullHighlightIterator();
return new NullLayerHighlightIterator();
}
}
@ -1337,7 +1337,26 @@ class NodeCursorAdaptor {
}
}
class NullHighlightIterator {
class NullLanguageModeHighlightIterator {
seek() {
return [];
}
compare() {
return 1;
}
moveToSuccessor() {}
getPosition() {
return Point.INFINITY;
}
getOpenScopeIds() {
return [];
}
getCloseScopeIds() {
return [];
}
}
class NullLayerHighlightIterator {
seek() {
return null;
}