You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Zero/ZeroLevel/Services/Extensions/EnumerableExtensions.cs

35 lines
951 B

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace ZeroLevel
{
public static class EnumerableExtensions
{
public static IEnumerable<T> Safe<T>(this IEnumerable<T> collection)
{
return collection ?? Enumerable.Empty<T>();
}
public static bool Contains<T>(this IEnumerable<T> collection, Predicate<T> condition)
{
return collection.Any(x => condition(x));
}
public static bool IsEmpty<T>(this IEnumerable<T> collection)
{
if (collection == null!)
return true;
var coll = collection as ICollection;
if (coll != null!)
return coll.Count == 0;
return !collection.Any();
}
public static bool IsNotEmpty<T>(this IEnumerable<T> collection)
{
return !IsEmpty(collection);
}
}
}

Powered by TurnKey Linux.