入力コレクションを返したい場合、foreachの代わりにイテレータブロックでreturnステートメントを使用する最も賢い方法は何ですか?
public IEnumerable<T> Filter(IEnumerable<T> collection)
{
if (someCondition)
{
// return collection; - cannot be used because of "yield" bellow
foreach (T obj in collection)
{
yield return obj;
}
yield break;
}
yield return new T();
}