public virtual A Redo() { undos.Push(redos.Pop()); CropUndos(); undos.Peek().Do(); return(undos.Peek()); }
public virtual A Undo() { redos.Push(undos.Pop()); CropRedos(); redos.Peek().Undo(); return(redos.Peek()); }
public A Peek() { return(stack.Peek()); }