pub trait Slot {
// Required method
fn on_emit(&mut self, event: Event);
}
Expand description
Handles events.
Examples
let (sender, receiver) = mpsc::channel();
let mut iter = receiver.try_iter();
let mut target = String::new();
let mut record = Record::builder()
.connect(sender)
.build();
record.edit(&mut target, Add('a'));
assert_eq!(iter.next(), Some(Event::Undo(true)));
assert_eq!(iter.next(), Some(Event::Saved(false)));
assert_eq!(iter.next(), Some(Event::Index(1)));
assert_eq!(iter.next(), None);
record.undo(&mut target);
assert_eq!(iter.next(), Some(Event::Undo(false)));
assert_eq!(iter.next(), Some(Event::Redo(true)));
assert_eq!(iter.next(), Some(Event::Saved(true)));
assert_eq!(iter.next(), Some(Event::Index(0)));
assert_eq!(iter.next(), None);