Struct tree_sitter::Tree
source · [−]pub struct Tree(_);
Expand description
A tree that represents the syntactic structure of a source code file.
Implementations
sourceimpl Tree
impl Tree
sourcepub fn edit(&mut self, edit: &InputEdit)
pub fn edit(&mut self, edit: &InputEdit)
Edit the syntax tree to keep it in sync with source code that has been edited.
You must describe the edit both in terms of byte offsets and in terms of row/column coordinates.
sourcepub fn walk(&self) -> TreeCursor<'_>
pub fn walk(&self) -> TreeCursor<'_>
Create a new TreeCursor starting from the root of the tree.
sourcepub fn changed_ranges(
&self,
other: &Tree
) -> impl ExactSizeIterator<Item = Range>
pub fn changed_ranges(
&self,
other: &Tree
) -> impl ExactSizeIterator<Item = Range>
Compare this old edited syntax tree to a new syntax tree representing the same document, returning a sequence of ranges whose syntactic structure has changed.
For this to work correctly, this syntax tree must have been edited such that its
ranges match up to the new tree. Generally, you’ll want to call this method right
after calling one of the Parser::parse functions. Call it on the old tree that
was passed to parse, and pass the new tree that was returned from parse
.
Trait Implementations
Auto Trait Implementations
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more