Table of Contents

TesterFuncFactory Class

Definition

Namespace
Cuemon.Extensions
Assemblies
Cuemon.Extensions.Core.dll
Source
src/Cuemon.Extensions.Core/TesterFuncFactory.cs

Provides access to factory methods for creating TesterFuncFactory<TTuple, TResult, TSuccess> instances that encapsulate a tester function delegate with a variable amount of generic arguments.

public static class TesterFuncFactory
Inheritance
object
TesterFuncFactory

Examples

The following example demonstrates how to create a TesterFuncFactory from a TryParse-style delegate. It shows both a successful parse and a failure case, printing the parsed value or fallback accordingly.

using System;
using Cuemon;
using Cuemon.Extensions;

namespace Cuemon.Extensions;

public class TesterFuncFactoryExample
{
    public void Demonstrate()
    {
        TesterFunc<string, int, bool> tryParse = (string input, out int result) => int.TryParse(input, out result);

        var factory = TesterFuncFactory.Create(tryParse, "42");
        bool success = factory.ExecuteMethod(out int value);
        Console.WriteLine($"Parsed: {value}, Success: {success}");

        var failFactory = TesterFuncFactory.Create(tryParse, "not-a-number");
        bool failed = failFactory.ExecuteMethod(out int fallback);
        Console.WriteLine($"Fallback: {fallback}, Success: {failed}");
    }
}

Methods

Name Description
Create<T1, T2, T3, T4, T5, T6, T7, T8, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and eight generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and nine generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and ten generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and eleven generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and twelfth generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and thirteen generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and fourteen generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and fifteen generic arguments.

Create<TResult, TSuccess>(TesterFunc<TResult, TSuccess>)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method.

Create<T, TResult, TSuccess>(TesterFunc<T, TResult, TSuccess>, T)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and one generic argument.

Create<T1, T2, TResult, TSuccess>(TesterFunc<T1, T2, TResult, TSuccess>, T1, T2)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and two generic arguments.

Create<T1, T2, T3, TResult, TSuccess>(TesterFunc<T1, T2, T3, TResult, TSuccess>, T1, T2, T3)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and three generic arguments.

Create<T1, T2, T3, T4, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, TResult, TSuccess>, T1, T2, T3, T4)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and four generic arguments.

Create<T1, T2, T3, T4, T5, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, TResult, TSuccess>, T1, T2, T3, T4, T5)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and five generic arguments.

Create<T1, T2, T3, T4, T5, T6, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, TResult, TSuccess>, T1, T2, T3, T4, T5, T6)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and six generic arguments.

Create<T1, T2, T3, T4, T5, T6, T7, TResult, TSuccess>(TesterFunc<T1, T2, T3, T4, T5, T6, T7, TResult, TSuccess>, T1, T2, T3, T4, T5, T6, T7)

Creates a new TesterFuncFactory<TTuple, TResult, TSuccess> instance encapsulating the specified method and seven generic arguments.

Invoke<TTuple, TResult, TSuccess>(TesterFunc<TTuple, TResult, TSuccess>, TTuple, out TResult)

Invokes the specified delegate method with a n-tuple argument.