node_grammar_type()
gets the node's type as it appears in the grammar,
ignoring aliases.
node_grammar_symbol()
gets the node's symbol (the type as a numeric id)
as it appears in the grammar, ignoring aliases. This should be used in
language_next_state()
rather than node_symbol()
.
node_grammar_type(x)
node_grammar_symbol(x)
language <- treesitter.r::language()
parser <- parser(language)
text <- "fn <- function() { 1 + 1 }"
tree <- parser_parse(parser, text)
node <- tree_root_node(tree)
# Examples for these functions are highly specific to the grammar,
# because they relies on the placement of `alias()` calls in the grammar.
node_grammar_type(node)
#> [1] "program"
node_grammar_symbol(node)
#> [1] 81