Fix tree-sitter-language-mode null highlight iterators

This commit is contained in:
Nikolay Yakimov 2021-03-24 16:48:19 +03:00
parent 6fa973136a
commit 2219c74b84
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;
}