LanguageExt.Core

LanguageExt.Core Traits Applicative Extensions

Contents

class ApplicativeExtensions Source #

Methods

method K<F, B> Action <B> (K<F, B> mb) Source #

method K<F, A> BackAction <B> (K<F, B> mb) Source #

class ApplicativeExtensions Source #

Methods

method K<AF, B> Apply (K<AF, A> ma) Source #

class ApplicativeExtensions Source #

Methods

method K<M, R> ApplyM <R> (Func<A, B, K<M, R>> f) Source #

class ApplicativeExtensions Source #

Methods

method K<F, A> Add <NumA, F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where NumA : Num<A>

Sum the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Add <F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where A : IAdditionOperators<A, A, A>

Sum the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Subtract <NumA, F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where NumA : Arithmetic<A>

Subtract the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Subtract <F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where A : ISubtractionOperators<A, A, A>

Subtract the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Multiply <NumA, F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where NumA : Arithmetic<A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Multiply <F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where A : IMultiplyOperators<A, A, A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Divide <NumA, F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where NumA : Num<A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Divide <F, A> (this K<F, A> fa, K<F, A> fb) Source #

where F : Applicative<F>
where A : IDivisionOperators<A, A, A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

class ApplicativeExtensions Source #

Methods

method K<F, B> Lift <F, A, B> (this Func<A, B> f, K<F, A> fa) Source #

where F : Applicative<F>

method K<F, C> Lift <F, A, B, C> (this Func<A, B, C> f, K<F, A> fa, K<F, B> fb) Source #

where F : Applicative<F>

method K<F, C> Lift <F, A, B, C> (this Func<A, Func<B, C>> f, K<F, A> fa, K<F, B> fb) Source #

where F : Applicative<F>

method K<F, D> Lift <F, A, B, C, D> (this Func<A, B, C, D> f, K<F, A> fa, K<F, B> fb, K<F, C> fc) Source #

where F : Applicative<F>

method K<F, D> Lift <F, A, B, C, D> (this Func<A, Func<B, Func<C, D>>> f, K<F, A> fa, K<F, B> fb, K<F, C> fc) Source #

where F : Applicative<F>

class ApplicativeExtensions Source #

Methods

method K<F, B> Action <B> (Memo<F, B> mb) Source #

method K<F, A> BackAction <B> (Memo<F, B> mb) Source #

class ApplicativeExtensions Source #

Methods

method K<AF, B> Apply (Memo<AF, A> ma) Source #

class ApplicativeExtensions Source #

Methods

method K<AF, R> Apply <R> (Func<A, B, R> f) Source #

class ApplicativeExtensions Source #

Methods

method K<F, A> Add <NumA, F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where NumA : Num<A>

Sum the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Add <F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where A : IAdditionOperators<A, A, A>

Sum the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Subtract <NumA, F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where NumA : Arithmetic<A>

Subtract the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Subtract <F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where A : ISubtractionOperators<A, A, A>

Subtract the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Multiply <NumA, F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where NumA : Arithmetic<A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Multiply <F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where A : IMultiplyOperators<A, A, A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Divide <NumA, F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where NumA : Num<A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

method K<F, A> Divide <F, A> (this Memo<F, A> fa, Memo<F, A> fb) Source #

where F : Applicative<F>
where A : IDivisionOperators<A, A, A>

Multiply the bound values of the applicative structures provided

Parameters

type NumA

Num of A

type A

Bound value type

param fx

Left hand side of the operation

param fy

Right hand side of the operation

returns

An applicative structure with the arithmetic operation applied to the bound values.

class ApplicativeExtensions Source #

Methods

method K<F, B> Lift <F, A, B> (this Func<A, B> f, Memo<F, A> fa) Source #

where F : Applicative<F>

method K<F, C> Lift <F, A, B, C> (this Func<A, B, C> f, Memo<F, A> fa, Memo<F, B> fb) Source #

where F : Applicative<F>

method K<F, C> Lift <F, A, B, C> (this Func<A, Func<B, C>> f, Memo<F, A> fa, Memo<F, B> fb) Source #

where F : Applicative<F>

method K<F, D> Lift <F, A, B, C, D> (this Func<A, B, C, D> f, Memo<F, A> fa, Memo<F, B> fb, Memo<F, C> fc) Source #

where F : Applicative<F>

method K<F, D> Lift <F, A, B, C, D> (this Func<A, Func<B, Func<C, D>>> f, Memo<F, A> fa, Memo<F, B> fb, Memo<F, C> fc) Source #

where F : Applicative<F>

class ApplicativeExtensions Source #

Methods

method K<F, (A First, B Second)> Zip () Source #

Zips applicatives into a tuple

Parameters

returns

Zipped applicative

class ApplicativeExtensions Source #

Methods

method K<F, (A First, B Second)> Zip () Source #

Zips applicatives into a tuple

Parameters

returns

Zipped applicative