1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
use crate::hir::*;
pub trait Visitor<'t> {
fn as_visitor(&mut self) -> &mut Visitor<'t>;
fn visit_name(&mut self, _: Spanned<Name>) {}
fn visit_library(&mut self, hir: &'t Library<'t>) {
hir.walk(self.as_visitor());
}
fn visit_pkg(&mut self, hir: &'t Package2<'t>) {
hir.walk(self.as_visitor());
}
fn visit_type_decl(&mut self, hir: &'t TypeDecl2<'t>) {
hir.walk(self.as_visitor());
}
fn visit_subtype_ind(&mut self, hir: &'t SubtypeInd2<'t>) {
hir.walk(self.as_visitor());
}
fn visit_literal_expr(&mut self, _: &'t LitExpr) {}
}