diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2019-12-22 13:47:45 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-22 13:47:45 +0100 |
commit | 9e9dcd4bd79cc5ea0fd240bcb242ceea07deabe2 (patch) | |
tree | b4c06d6b6485f364f502b97d8775546a9fced24f /src/tree_sitter/node.c | |
parent | e1d63c180cc38cec5a8bf3e543bfe18472352da4 (diff) | |
parent | 440695c29696f261337227e5c419aa1cf313c2dd (diff) | |
download | rneovim-9e9dcd4bd79cc5ea0fd240bcb242ceea07deabe2.tar.gz rneovim-9e9dcd4bd79cc5ea0fd240bcb242ceea07deabe2.tar.bz2 rneovim-9e9dcd4bd79cc5ea0fd240bcb242ceea07deabe2.zip |
Merge pull request #11113 from bfredl/tree-sitter-query
tree-sitter step 2: query API and highlighting prototype
Diffstat (limited to 'src/tree_sitter/node.c')
-rw-r--r-- | src/tree_sitter/node.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/tree_sitter/node.c b/src/tree_sitter/node.c index 6b2be36ee5..b03e2fc979 100644 --- a/src/tree_sitter/node.c +++ b/src/tree_sitter/node.c @@ -415,13 +415,15 @@ TSPoint ts_node_end_point(TSNode self) { } TSSymbol ts_node_symbol(TSNode self) { - return ts_node__alias(&self) - ? ts_node__alias(&self) - : ts_subtree_symbol(ts_node__subtree(self)); + TSSymbol symbol = ts_node__alias(&self); + if (!symbol) symbol = ts_subtree_symbol(ts_node__subtree(self)); + return ts_language_public_symbol(self.tree->language, symbol); } const char *ts_node_type(TSNode self) { - return ts_language_symbol_name(self.tree->language, ts_node_symbol(self)); + TSSymbol symbol = ts_node__alias(&self); + if (!symbol) symbol = ts_subtree_symbol(ts_node__subtree(self)); + return ts_language_symbol_name(self.tree->language, symbol); } char *ts_node_string(TSNode self) { |