Function: treesit-node-start
treesit-node-start is a function defined in treesit.c.
Signature
(treesit-node-start NODE)
Documentation
Return the NODE's start position in its buffer.
If NODE is nil, return nil.
Other relevant functions are documented in the treesit group.
Shortdoc
;; treesit
(treesit-node-start node)
e.g. => 1
Source Code
// Defined in /usr/src/emacs/src/treesit.c
{
if (NILP (node)) return Qnil;
treesit_check_node (node);
treesit_initialize ();
TSNode treesit_node = XTS_NODE (node)->node;
ptrdiff_t visible_beg = XTS_PARSER (XTS_NODE (node)->parser)->visible_beg;
uint32_t start_byte_offset = ts_node_start_byte (treesit_node);
struct buffer *buffer
= XBUFFER (XTS_PARSER (XTS_NODE (node)->parser)->buffer);
ptrdiff_t start_pos
= buf_bytepos_to_charpos (buffer,
start_byte_offset + visible_beg);
return make_fixnum (start_pos);
}