DiscriminatedUnionIEnumerableExtensions.

Match<Type1, Type2, Type3, Type4, Type5, ReturnType>(IEnumerable<DiscriminatedUnion<Type1, Type2, Type3, Type4, Type5>>, Func<Type1, ReturnType>, Func<Type2, ReturnType>, Func<Type3, ReturnType>, Func<Type4, ReturnType>, Func<Type5, ReturnType>) Method

Summary

Matches the specific types and uses the given functions to tranform into s ingle returntype.

Syntax

public static IEnumerable<ReturnType> Match<Type1, Type2, Type3, Type4, Type5, ReturnType>(this IEnumerable<DiscriminatedUnion<Type1, Type2, Type3, Type4, Type5>> values, Func<Type1, ReturnType> Function1, Func<Type2, ReturnType> Function2, Func<Type3, ReturnType> Function3, Func<Type4, ReturnType> Function4, Func<Type5, ReturnType> Function5)

Type Parameters

Name Description
Type1 Type1
Type2 Type2
Type3 Type3
Type4 Type4
Type5 Type5
ReturnType the returntype for all functions

Parameters

Name Type Description
values IEnumerable<DiscriminatedUnion<Type1, Type2, Type3, Type4, Type5>> existing Discriminated unions
Function1 Func<Type1, ReturnType> Function to run for Type1
Function2 Func<Type2, ReturnType> Function to run for Type2
Function3 Func<Type3, ReturnType> Function to run for Type3
Function4 Func<Type4, ReturnType> Function to run for Type4
Function5 Func<Type5, ReturnType> Function to run for Type5

Return Value

Type Description
IEnumerable<ReturnType>