private static IEnumerable <ListOperation <T> > Enumerate([NotNull] IListResetOperation <T> reset) { yield return(ListOperation <T> .OnClear()); var index = 0; if (reset.Items != null) { foreach (var item in reset.Items) { yield return(ListOperation <T> .OnAdd(item, index ++)); } } }
private static ItemOrEnumerable <ListOperation <T> > OnReset([NotNull] IListResetOperation <T> reset) => new ItemOrEnumerable <ListOperation <T> >(Enumerate(reset));