use super::error::ParseError;
use super::span::Span;
pub trait FromNode<'tree>: Sized {
fn from_node(node: tree_sitter::Node<'tree>, src: &'tree [u8]) -> Result<Self, ParseError>;
}
pub trait LeafNode<'tree>: FromNode<'tree> {
fn text(&self) -> &'tree str;
}
pub trait Spanned {
fn span(&self) -> Span;
fn start(&self) -> tree_sitter::Point {
self.span().start
}
fn end(&self) -> tree_sitter::Point {
self.span().end
}
}