public void MarkAllDeleted() {
foreach (var entry in _entries.Values.ToList()) {
entry.PreviousRelativePath = null;
switch (entry.State) {
case Unchanged:
case Renamed:
case RenamedThenAdded:
entry.State = Deleted;
break;
case Added:
_entries.Remove(entry.RelativePath);
break;
case Deleted:
break;
default:
throw new ArgumentOutOfRangeException();
}
}
RescanRequired = false;
}