The Scan<T> implementation throws when an empty sequence is found. I believe the correct behavior should be to yield break in that case.
This would mean a different behavior from the Scan<T, TState> implementation, but it is already different. Without a seed, an IEnumerable of size N will yield an IEnumerable of the same size, while the version with seed adds an extra element.
So making a 0-length IEnumerable result in a 0-length IEnumerable seems like the right behavior to me.
Comment #1
Posted on Aug 21, 2015 by Massive OxThis issue has been migrated to: https://github.com/MoreLINQ/morelinq/issues/97 The conversation continues there. DO NOT post any further comments to the issue tracker on Google Code as it is shutting down. You can also just subscribe to the issue on GitHub to receive notifications of any further development.
Status: New
Labels:
Type-Enhancement