1 unstable release
0.1.0 | Feb 17, 2019 |
---|
#21 in #visit
Used in forest
18KB
377 lines
visit
Automatically generate code for the Visitor pattern.
Usage
visit! {
// Automatically generates `Visitor` and `AcceptVisitor` traits
// The `Visitor` trait will contain `visit_<child>` functions for all items inside of the macro call.
// The `AcceptVisitor` trait will be implemented automatically for all items.
#![visitor(name = "Visitor")]
struct Bar {
a: Child,
b: Child,
}
struct Child {}
}
struct MyVisitor;
impl Visitor for MyVisitor {
fn visit_child(&mut self, _child: &Child) {
// Do something cool
}
}
License
visit is licensed under either of the following licenses, at your option:
Dependencies
~2MB
~48K SLoC