Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct Node<'r> {
- update: Box<dyn 'r+FnMut()>,
- deps: Vec<Node<'r>>
- }
- fn main() {
- let mut a = 1;
- let mut b = 1;
- {
- let mut n2 = Node { update: Box::new(|| { b = 3 }), deps: vec![] };
- let mut n = Node {
- update: Box::new(|| {
- a = 2;
- }),
- deps: vec![n2]
- };
- (n.update)();
- for n2 in &mut n.deps {
- (n2.update)();
- }
- }
- println!("Hello, world! {} {}", a, b);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement