Table of Contents

Class IncrementalExtensions

Namespace
NMF.Transformations.Linq
Assembly
NMF.Transformations.dll

This class contains the extension methods necessary for the NMF Transformations relational extensions

public static class IncrementalExtensions
Inheritance
IncrementalExtensions
Inherited Members

Methods

SelectMany<T1, T2>(Func<ITransformationContext, INotifyEnumerable<T1>>, Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>>)

Binds the Monad IRelationalSource to child items

public static Func<ITransformationContext, INotifyEnumerable<T2>> SelectMany<T1, T2>(this Func<ITransformationContext, INotifyEnumerable<T1>> items, Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>> selector)

Parameters

items Func<ITransformationContext, INotifyEnumerable<T1>>

The monad instance which children are to be selected

selector Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>>

A method that selects the output

Returns

Func<ITransformationContext, INotifyEnumerable<T2>>

A monad instance with items selected by the given selector function

Type Parameters

T1

The inner type of the outer monad instance

T2

The inner type of the inner monad instance

Remarks

Please see the documentation of the SelectMany extension method and its use with the LINQ-syntax for more details

SelectMany<T1, T2, T3>(Func<ITransformationContext, INotifyEnumerable<T1>>, Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>>, Expression<Func<T1, T2, T3>>)

Binds the Monad IRelationalSource to child items

public static Func<ITransformationContext, INotifyEnumerable<T3>> SelectMany<T1, T2, T3>(this Func<ITransformationContext, INotifyEnumerable<T1>> items, Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>> func, Expression<Func<T1, T2, T3>> selector)

Parameters

items Func<ITransformationContext, INotifyEnumerable<T1>>

The monad instance which children are to be selected

func Expression<Func<T1, Func<ITransformationContext, IEnumerable<T2>>>>

The operator that should be applied in the bind function

selector Expression<Func<T1, T2, T3>>

A method that selects the output

Returns

Func<ITransformationContext, INotifyEnumerable<T3>>

A monad instance with items selected by the given selector function

Type Parameters

T1

The inner type of the outer monad instance

T2

The inner type of the inner monad instance

T3

The inner type of the return monad

Remarks

Please see the documentation of the SelectMany extension method and its use with the LINQ-syntax for more details

Select<T1, T2>(Func<ITransformationContext, INotifyEnumerable<T1>>, Expression<Func<T1, T2>>)

Binds the Monad IRelationalSource to child items

public static Func<ITransformationContext, INotifyEnumerable<T2>> Select<T1, T2>(this Func<ITransformationContext, INotifyEnumerable<T1>> items, Expression<Func<T1, T2>> selector)

Parameters

items Func<ITransformationContext, INotifyEnumerable<T1>>

The monad instance whose child items should be selected

selector Expression<Func<T1, T2>>

A method that selects the result items from a source item

Returns

Func<ITransformationContext, INotifyEnumerable<T2>>

A monad instance of the result type that is based on the source monad instance

Type Parameters

T1

The inner type of the input monad instance

T2

The inner type of the result monad instance

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, ITransformationContext)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, ITransformationContext context) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, ITransformationContext, bool)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, ITransformationContext context, bool allowNull) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, ITransformationContext, bool, Func<InPlaceComputationWrapper<TInput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, ITransformationContext context, bool allowNull, Func<InPlaceComputationWrapper<TInput>, bool> filter) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<InPlaceComputationWrapper<TInput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, ITransformationContext, Func<InPlaceComputationWrapper<TInput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, ITransformationContext context, Func<InPlaceComputationWrapper<TInput>, bool> filter) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

filter Func<InPlaceComputationWrapper<TInput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, bool)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, bool allowNull) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, bool, Func<InPlaceComputationWrapper<TInput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, bool allowNull, Func<InPlaceComputationWrapper<TInput>, bool> filter) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<InPlaceComputationWrapper<TInput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput>(InPlaceTransformationRuleBase<TInput>, Func<InPlaceComputationWrapper<TInput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>> ToComputationSource<TInput>(this InPlaceTransformationRuleBase<TInput> rule, Func<InPlaceComputationWrapper<TInput>, bool> filter) where TInput : class

Parameters

rule InPlaceTransformationRuleBase<TInput>

The rule that should be taken as a source of computation objects

filter Func<InPlaceComputationWrapper<TInput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, ITransformationContext)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, ITransformationContext context) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, ITransformationContext, bool)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, ITransformationContext context, bool allowNull) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, ITransformationContext, bool, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, ITransformationContext context, bool allowNull, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool> filter) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, ITransformationContext, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, ITransformationContext context, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool> filter) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

filter Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, bool)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, bool allowNull) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, bool, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, bool allowNull, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool> filter) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput1, TInput2>(InPlaceTransformationRuleBase<TInput1, TInput2>, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>> ToComputationSource<TInput1, TInput2>(this InPlaceTransformationRuleBase<TInput1, TInput2> rule, Func<InPlaceComputationWrapper<TInput1, TInput2>, bool> filter) where TInput1 : class where TInput2 : class

Parameters

rule InPlaceTransformationRuleBase<TInput1, TInput2>

The rule that should be taken as a source of computation objects

filter Func<InPlaceComputationWrapper<TInput1, TInput2>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<InPlaceComputationWrapper<TInput1, TInput2>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, ITransformationContext)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, ITransformationContext context) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, ITransformationContext, bool)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, ITransformationContext context, bool allowNull) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, ITransformationContext, bool, Func<TransformationComputationWrapper<TInput, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, ITransformationContext context, bool allowNull, Func<TransformationComputationWrapper<TInput, TOutput>, bool> filter) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<TransformationComputationWrapper<TInput, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, ITransformationContext, Func<TransformationComputationWrapper<TInput, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, ITransformationContext context, Func<TransformationComputationWrapper<TInput, TOutput>, bool> filter) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

filter Func<TransformationComputationWrapper<TInput, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, bool)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, bool allowNull) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, bool, Func<TransformationComputationWrapper<TInput, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, bool allowNull, Func<TransformationComputationWrapper<TInput, TOutput>, bool> filter) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<TransformationComputationWrapper<TInput, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput, TOutput>(TransformationRuleBase<TInput, TOutput>, Func<TransformationComputationWrapper<TInput, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>> ToComputationSource<TInput, TOutput>(this TransformationRuleBase<TInput, TOutput> rule, Func<TransformationComputationWrapper<TInput, TOutput>, bool> filter) where TInput : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput, TOutput>

The rule that should be taken as a source of computation objects

filter Func<TransformationComputationWrapper<TInput, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput

The type of the input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, ITransformationContext)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, ITransformationContext context) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, ITransformationContext, bool)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, ITransformationContext context, bool allowNull) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, ITransformationContext, bool, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, ITransformationContext context, bool allowNull, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool> filter) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, ITransformationContext, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, ITransformationContext context, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool> filter) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

context ITransformationContext

The context in which the rule is used as source of computations

filter Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, bool)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, bool allowNull) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, bool, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, bool allowNull, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool> filter) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

allowNull bool

A boolean value indicating whether null values should be allowed

filter Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

ToComputationSource<TInput1, TInput2, TOutput>(TransformationRuleBase<TInput1, TInput2, TOutput>, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>)

Creates a new computation source from a transformation rule

public static Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>> ToComputationSource<TInput1, TInput2, TOutput>(this TransformationRuleBase<TInput1, TInput2, TOutput> rule, Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool> filter) where TInput1 : class where TInput2 : class where TOutput : class

Parameters

rule TransformationRuleBase<TInput1, TInput2, TOutput>

The rule that should be taken as a source of computation objects

filter Func<TransformationComputationWrapper<TInput1, TInput2, TOutput>, bool>

A method or lambda expression to filter the computation objects

Returns

Func<ITransformationContext, INotifyEnumerable<TransformationComputationWrapper<TInput1, TInput2, TOutput>>>

A source of computations that can further be dealt with

Type Parameters

TInput1

The type of the first input arguments for the transformation rule

TInput2

The type of the second input arguments for the transformation rule

TOutput

The output type of the transformation rule

Where<T>(Func<ITransformationContext, INotifyEnumerable<T>>, Expression<Func<T, bool>>)

Filters the given monad instance with the given filter operator

public static Func<ITransformationContext, INotifyEnumerable<T>> Where<T>(this Func<ITransformationContext, INotifyEnumerable<T>> items, Expression<Func<T, bool>> filter)

Parameters

items Func<ITransformationContext, INotifyEnumerable<T>>

The monad instance that should be filtered

filter Expression<Func<T, bool>>

The filter that should be applied to the monad

Returns

Func<ITransformationContext, INotifyEnumerable<T>>

A filtered monad instance

Type Parameters

T

The inner type of the monad instance

Remarks

Please see the documentation of the Where extension method and its use with the LINQ-syntax for more details