[−][src]Function undo::with_merge
pub fn with_merge<A>(command: A, merge: Merge) -> WithMerge<A>
Creates a command wrapper with the specified merge behavior.
Examples
let mut record = Record::default(); let a = from_fn(|s: &mut String| s.push('a')); let b = from_fn(|s: &mut String| s.push('b')); let a = a.with_merge(Merge::If(0)); let b = b.with_merge(Merge::If(0)); record.apply(a)?; record.apply(b)?; assert_eq!(record.target(), "ab"); record.undo()?; assert_eq!(record.target(), ""); record.redo()?; assert_eq!(record.target(), "ab");