SumType<T1,T2,T3,T4>.Match<TResult>(Func<T1,TResult>, Func<T2,TResult>, Func<T3,TResult>, Func<T4,TResult>, Func<TResult>) Метод

Определение

Выполняет делегат, соответствующий типу, содержащемуся в данном экземпляре.

public TResult Match<TResult> (Func<T1,TResult> firstMatch, Func<T2,TResult> secondMatch, Func<T3,TResult> thirdMatch, Func<T4,TResult> fourthMatch, Func<TResult> defaultMatch = default);
member this.Match : Func<'T1, 'Result> * Func<'T2, 'Result> * Func<'T3, 'Result> * Func<'T4, 'Result> * Func<'Result> -> 'Result
Public Function Match(Of TResult) (firstMatch As Func(Of T1, TResult), secondMatch As Func(Of T2, TResult), thirdMatch As Func(Of T3, TResult), fourthMatch As Func(Of T4, TResult), Optional defaultMatch As Func(Of TResult) = Nothing) As TResult

Параметры типа

TResult

Тип, который будут возвращены всеми делегатами.

Параметры

firstMatch
Func<T1,TResult>

Делегат, обрабатывающий случаи, когда этот экземпляр содержит T1 .

secondMatch
Func<T2,TResult>

Делегат, обрабатывающий случаи, когда этот экземпляр содержит T2 .

thirdMatch
Func<T3,TResult>

Делегат, обрабатывающий случаи, когда этот экземпляр содержит T3 .

fourthMatch
Func<T4,TResult>

Делегат, обрабатывающий случаи, когда этот экземпляр содержит T4 .

defaultMatch
Func<TResult>

Делегат, обрабатывающий случаи, когда этот экземпляр является унинхабитед. Если этот делегат не указан, TResult вместо него будет возвращено значение по умолчанию.

Возвращаемое значение

TResult

TResultЭкземпляр, созданный делегатом, который соответствует текущему типу, хранящемуся в данном экземпляре.

Применяется к