Table of Contents

Class CollectionExtensions

Namespace
S1MAPI.Extensions
Assembly
S1MAPI_Mono.dll

Extension methods for collection operations.

public static class CollectionExtensions
Inheritance
CollectionExtensions
Inherited Members

Methods

DistinctBy<T, TKey>(IEnumerable<T>, Func<T, TKey>)

Get distinct items by key selector.

public static IEnumerable<T> DistinctBy<T, TKey>(this IEnumerable<T> collection, Func<T, TKey> keySelector)

Parameters

collection IEnumerable<T>
keySelector Func<T, TKey>

Returns

IEnumerable<T>

Type Parameters

T
TKey

ForEach<T>(IEnumerable<T>, Action<T>)

Perform action on each item in collection.

public static IEnumerable<T> ForEach<T>(this IEnumerable<T> collection, Action<T> action)

Parameters

collection IEnumerable<T>
action Action<T>

Returns

IEnumerable<T>

Type Parameters

T

SafeGet<T>(IList<T>, int)

Safe index access that returns default if out of range.

public static T? SafeGet<T>(this IList<T> list, int index)

Parameters

list IList<T>
index int

Returns

T

Type Parameters

T

Shuffle<T>(IList<T>)

Shuffle collection in place using Fisher-Yates algorithm.

public static IList<T> Shuffle<T>(this IList<T> list)

Parameters

list IList<T>

Returns

IList<T>

Type Parameters

T

ToIntList(IEnumerable<int>)

Convert int array to List.

public static List<int> ToIntList(this IEnumerable<int> array)

Parameters

array IEnumerable<int>

Returns

List<int>

ToVector3List(IEnumerable<Vector3>)

Convert Vector3 array to List.

public static List<Vector3> ToVector3List(this IEnumerable<Vector3> array)

Parameters

array IEnumerable<Vector3>

Returns

List<Vector3>