コガネブログ

平日更新を目標にUnityやC#、Visual Studioなどのゲーム開発アレコレを書いていきます

【C#】指定されたシーケンスから条件を満たさない要素を全て返す拡張メソッド

ソースコード

using System;
using System.Collections.Generic;
using System.Linq;

public static class IEnumerableExtensions
{
    /// <summary>
    /// 指定されたシーケンスから条件を満たさない要素を全て返します
    /// </summary>
    public static IEnumerable<TSource> WhereNot<TSource, TResult>(
        this IEnumerable<TSource> source,
        Func<TSource, bool> predicate
    )
    {
        return source.Where( c => !predicate( c ) );
    }
}