pub trait SyntaxWalker<T> {
// Required methods
fn enter(&mut self, n: &SyntaxNode) -> T;
fn exit(&mut self, n: &SyntaxNode, i: T);
// Provided method
fn walk(&mut self, node: &SyntaxNode) { ... }
}
pub trait SyntaxWalker<T> {
// Required methods
fn enter(&mut self, n: &SyntaxNode) -> T;
fn exit(&mut self, n: &SyntaxNode, i: T);
// Provided method
fn walk(&mut self, node: &SyntaxNode) { ... }
}