Add ts_node_is_extra API

This commit is contained in:
Max Brunsfeld 2019-06-19 15:58:29 -07:00
parent 177ba49e57
commit 28011b1e60
5 changed files with 339 additions and 74 deletions

View file

@ -404,6 +404,21 @@ fn test_node_edit() {
}
}
#[test]
fn test_node_is_extra() {
let mut parser = Parser::new();
parser.set_language(get_language("javascript")).unwrap();
let tree = parser.parse("foo(/* hi */);", None).unwrap();
let root_node = tree.root_node();
let comment_node = root_node.descendant_for_byte_range(7, 7).unwrap();
assert_eq!(root_node.kind(), "program");
assert_eq!(comment_node.kind(), "comment");
assert!(!root_node.is_extra());
assert!(comment_node.is_extra());
}
#[test]
fn test_node_field_names() {
let (parser_name, parser_code) = generate_parser_for_grammar(