Search Results for

    Show / Hide Table of Contents

    Class SetOrderEnumerator<T>

    A class that enumerates a collection into a given order of mutually exclusive sets

    Inheritance
    object
    SetOrderEnumerator<T>
    Implements
    IEnumerable<T>
    IEnumerable
    IEnumerator<T>
    IEnumerator
    IDisposable
    Inherited Members
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: LemonEdge.Utils
    Assembly: LemonEdge.Utils.dll
    Syntax
    public class SetOrderEnumerator<T> : IEnumerable<T>, IEnumerable, IEnumerator<T>, IEnumerator, IDisposable
    Type Parameters
    Name Description
    T

    The type of items being enumerated

    Remarks

    The sets are definied as an ordered collection of functions that return if an item of type T belongs in the set or not.

    As such an item must belong to one, and only one, set - these must be mutually exclusive sets

    For example:

    public IEnumerable<int> GetMyInts()
    {
        var myItems = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8 };
        var mySets = new List<Func<int, bool>>()
            {
                (int i) => i % 2 != 0,  //odd
                (int i) => i % 2 == 0   //even
            };
        return new SetOrderEnumerator<int>(myItems, mySets);
    }

    Will return:

    1,3,5,7,2,4,6,8

    Constructors

    SetOrderEnumerator(IEnumerable<T>, IEnumerable<Func<T, bool>>)

    Constructs a new SetOrderEnumerator<T> that can enumerate the given collections into ordered sets

    Declaration
    public SetOrderEnumerator(IEnumerable<T> items, IEnumerable<Func<T, bool>> sets)
    Parameters
    Type Name Description
    IEnumerable<T> items

    The items to be enumerated

    IEnumerable<Func<T, bool>> sets

    An ordered collection of functions defining if an item of type T belongs to the set or not

    Properties

    Current

    Current Implementation. Returns current item in enumeration

    Declaration
    public T Current { get; }
    Property Value
    Type Description
    T

    Methods

    Dispose()

    Declaration
    public void Dispose()

    Dispose(bool)

    Declaration
    protected virtual void Dispose(bool disposing)
    Parameters
    Type Name Description
    bool disposing

    GetEnumerator()

    GetEnumerator() Implementation

    Declaration
    public IEnumerator<T> GetEnumerator()
    Returns
    Type Description
    IEnumerator<T>

    An IEnumerator<T>

    MoveNext()

    MoveNext() Implementation. Moves to next item in the enumeration

    Declaration
    public bool MoveNext()
    Returns
    Type Description
    bool

    Reset()

    Reset() Implementation. Resets the current enumeration

    Declaration
    public void Reset()

    Implements

    IEnumerable<T>
    IEnumerable
    IEnumerator<T>
    IEnumerator
    IDisposable

    Extension Methods

    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    LinqExtensions.Flatten<T>(IEnumerable<T>, Func<T, IEnumerable<T>, IEnumerable<T>>)
    LinqExtensions.Flatten<T>(IEnumerable<T>, Func<T, IEnumerable<T>>)
    LinqExtensions.Max<T, Y>(IEnumerable<T>, Func<T, Y>, Y)
    LinqExtensions.Min<T, Y>(IEnumerable<T>, Func<T, Y>, Y)
    LinqExtensions.Sum<T>(IEnumerable<T>, Func<T, decimal>, decimal)
    LinqExtensions.WithIndex<T>(IEnumerable<T>)
    MiscExtensions.GetDuplicatesFromKeys<T, TKey>(IEnumerable<T>, Func<T, TKey>)
    MiscExtensions.GetIndex<T>(IEnumerable<T>, Func<T, bool>)
    MiscExtensions.ToAsyncEnumerable<T>(IEnumerable<T>)
    MiscExtensions.ToCollectionDictionary<TKey, T>(IEnumerable<T>, Func<T, TKey>)
    MiscExtensions.ToCollectionDictionary<TKey, T, TVAL>(IEnumerable<T>, Func<T, TKey>, Func<T, TVAL>)
    MiscExtensions.ToConcurrentCollectionDictionary<TKey, T>(IEnumerable<T>, Func<T, TKey>)
    MiscExtensions.ToDictionaryOfDictionary<TKey1, TKey2, T>(IEnumerable<T>, Func<T, TKey1>, Func<T, TKey2>)
    MiscExtensions.ToSizedCollections<T>(IEnumerable<T>, int)
    QueryExecuterHelper.FilterItems<T>(IEnumerable<T>, QueryableFilter)
    StringExtensions.ToCommaSeperatedList<T>(IEnumerable<T>, Func<T, string>, string, string)
    StringExtensions.ToConcatenatedList<T>(IEnumerable<T>, Func<T, string>, string, string, string)
    StringExtensions.ToStringGrid<T>(IEnumerable<T>, ITreeNode<(string Name, string Key)>[], (string Name, string GroupKey)[], Func<T, string, string>, char)
    StringExtensions.ToStringGrid<T>(IEnumerable<T>, string[], Func<T, string, string>, char)
    MiscExtensions.AnyItems(IEnumerable)
    MiscExtensions.CountItems(IEnumerable)
    MiscExtensions.GetIndex(IEnumerable, object)
    MiscExtensions.ItemsAreEqual(IEnumerable, IEnumerable)
    StringExtensions.ToCommaSeperatedList(IEnumerable)
    StringExtensions.ToCommaSeperatedList(IEnumerable, Func<object, string>, string, string)
    StringExtensions.ToCommaSeperatedList(IEnumerable, string, string)
    StringExtensions.ToConcatenatedList(IEnumerable, Func<object, string>, string, string, string)
    StringExtensions.ToConcatenatedList(IEnumerable, string)
    StringExtensions.ToConcatenatedList(IEnumerable, string, string, string)
    StringHelper.ToCSV(IEnumerable, string[], Type[], string[])
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.