LanguageExt.Core

LanguageExt.Core

If you're new to this library, you may need a few pointers of where to look for features:

Contents

Sub modules

Class Instances
Common
Concurrency
DataTypes
Effects
Exceptions
Extensions
Immutable Collections
Lens
Monads
Obsolute and Deprecated
Prelude
Pretty
Prism
Traits
Transducers
Type Classes
Units of Measure
Utility

record CatchValue <A> (Func<Error, bool> Match, Func<Error, A> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

Methods

method CatchValue<Error, A> As () Source #

record CatchValue <E, A> (Func<E, bool> Match, Func<E, A> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

record CatchError (Func<Error, bool> Match, Func<Error, Error> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

Methods

method CatchError<Error> As () Source #

record CatchError <E> (Func<E, bool> Match, Func<E, E> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

record CatchIO <A> (Func<Error, bool> Match, Func<Error, IO<A>> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

Methods

method CatchIO<Error, A> As () Source #

record CatchIO <E, A> (Func<E, bool> Match, Func<E, IO<A>> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

record CatchM <M, A> (Func<Error, bool> Match, Func<Error, K<M, A>> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

Methods

method K<M, A> Run (Error error, K<M, A> otherwise) Source #

record CatchM <M, E, A> (Func<E, bool> Match, Func<E, K<M, A>> Value) Source #

Used by @catch, @exceptional, @expected to represent the catching of errors

Methods

method K<M, A> Run (E error, K<M, A> otherwise) Source #

class CombinatorsDynamic Source #

Fields

field Func<dynamic, dynamic> I = (dynamic x) => x Source #

Identity function, or the Idiot bird dkeenan.com/Lambda/

field Func<dynamic, Func<dynamic, dynamic>> M = (dynamic x) => (dynamic a) => x(x(a)) Source #

The Mockingbird dkeenan.com/Lambda/

field Func<dynamic, Func<dynamic, dynamic>> K = (dynamic x) => (dynamic y) => x Source #

The Kestrel dkeenan.com/Lambda/

field Func<dynamic, Func<dynamic, dynamic>> T = (dynamic x) => (dynamic y) => y(x) Source #

field Func<dynamic, Func<dynamic, Func<dynamic, dynamic>>> Q = (dynamic x) => (dynamic y) => (dynamic z) => y(x(z)) Source #

The Queer bird dkeenan.com/Lambda/

field Func<dynamic, Func<dynamic, Func<dynamic, dynamic>>> S = (dynamic x) => (dynamic y) => (dynamic z) => x(z)(y(z)) Source #

The Starling dkeenan.com/Lambda/

field Func<dynamic, Func<dynamic, dynamic>> Y = (dynamic f) => (dynamic x) => f(Y(f), x) Source #

The infamous Y-combinator, or Sage bird dkeenan.com/Lambda/

class Combinators <A> Source #

Fields

field Func<A, A> I = (A x) => x Source #

Identity function, or the Idiot bird dkeenan.com/Lambda/

field Func<Func<A, A>, Func<A, A>> M = (Func<A, A> x) => a => x(x(a)) Source #

The Mockingbird dkeenan.com/Lambda/

class Combinators <A, B> Source #

Fields

field Func<A, Func<B, A>> K = (A x) => (B y) => x Source #

The Kestrel dkeenan.com/Lambda/

field Func<A, Func<Func<A, B>, B>> T = (A x) => (Func<A, B> y) => y(x) Source #

class Combinators <A, B, C> Source #

Fields

field Func<Func<A, B>, Func<Func<B, C>, Func<A, C>>> Q = (Func<A, B> x) => (Func<B, C> y) => (A z) => y(x(z)) Source #

The Queer bird dkeenan.com/Lambda/

field Func<Func<A, Func<B, C>>, Func<Func<A, B>, Func<A, C>>> S = (Func<A, Func<B, C>> x) => (Func<A, B> y) => (A z) => x(z)(y(z)) Source #

The Starling dkeenan.com/Lambda/

field Func<Func<Func<A, B>, A, B>, Func<A, B>> Y = (Func<Func<A, B>, A, B> f) => (A x) => f(Y(f), x) Source #

The infamous Y-combinator, or Sage bird dkeenan.com/Lambda/

class Combinators Source #

Methods

method A I <A> (A x) Source #

Identity function, or the Idiot bird dkeenan.com/Lambda/

method Func<B, A> K <A, B> (A x) Source #

The Kestrel dkeenan.com/Lambda/

method Func<A, A> M <A> (Func<A, A> x) Source #

The Mockingbird dkeenan.com/Lambda/

method Func<Func<A, B>, B> T <A, B> (A x) Source #

method Func<Func<B, C>, Func<A, C>> Q <A, B, C> (Func<A, B> x) Source #

The Queer bird dkeenan.com/Lambda/

method Func<Func<A, B>, Func<A, C>> S <A, B, C> (Func<A, B, C> x) Source #

The Starling dkeenan.com/Lambda/

struct Guard <E, A> Source #

Used by various error producing monads to have a contextual where

See Prelude.guard(...)

Fields

field bool Flag Source #

Properties

property Func<E> OnFalse Source #

Methods

method Guard<E, B> Cast <B> () Source #

method Guard<E, C> SelectMany <C> (Func<E, Guard<E, Unit>> bind, Func<Unit, Unit, C> project) Source #

method Guard<E, B> Select <B> (Func<B, B> _) Source #

method Transducer<Unit, Sum<E, Unit>> ToTransducer () Source #

method Either<E, Unit> ToEither () Source #

Natural transformation to Either

method Either<E, B> Bind <B> (Func<Unit, Either<E, B>> f) Source #

Monadic binding support for Either

method Either<E, C> SelectMany <B, C> ( Func<Unit, Either<E, B>> bind, Func<Unit, B, C> project) Source #

Monadic binding SelectMany extension for Guard

class GuardExtensions Source #

Methods

method IO<B> Bind <B> ( this Guard<Error, Unit> guard, Func<Unit, IO<B>> f) Source #

Monadic binding support for Eff

method IO<C> SelectMany <B, C> ( this Guard<Error, Unit> guard, Func<Unit, IO<B>> bind, Func<Unit, B, C> project) Source #

Monadic binding support for Eff

method IO<Unit> ToIO (this Guard<Error, Unit> guard) Source #

Natural transformation to IO

method Eff<Unit> ToEff (this Guard<Error, Unit> guard) Source #

Natural transformation to Eff

method Eff<B> Bind <B> ( this Guard<Error, Unit> guard, Func<Unit, Eff<B>> f) Source #

Monadic binding support for Eff

method Eff<C> SelectMany <B, C> ( this Guard<Error, Unit> guard, Func<Unit, Eff<B>> bind, Func<Unit, B, C> project) Source #

Monadic binding support for Eff

method Eff<RT, Unit> ToEff <RT> (this Guard<Error, Unit> guard) Source #

Natural transformation to Eff

method Eff<RT, B> Bind <RT, B> ( this Guard<Error, Unit> guard, Func<Unit, Eff<RT, B>> f) Source #

Monadic binding support for Eff

method Eff<RT, C> SelectMany <RT, B, C> ( this Guard<Error, Unit> guard, Func<Unit, Eff<RT, B>> bind, Func<Unit, B, C> project) Source #

Monadic binding support for Eff

method Validation<F, Unit> ToValidation <F> (this Guard<F, Unit> guard) Source #

where F : Monoid<F>

Natural transformation to Validation

method Validation<F, B> Bind <F, B> ( this Guard<F, Unit> guard, Func<Unit, Validation<F, B>> f) Source #

where F : Monoid<F>

Monadic binding support for Validation

method Validation<F, C> SelectMany <F, B, C> ( this Guard<F, Unit> guard, Func<Unit, Validation<F, B>> bind, Func<Unit, B, C> project) Source #

where F : Monoid<F>

Monadic binding support for Validation

class Number <A> Source #

where A : INumber<A>

Num<A> trait for INumber<A>

Parameters

type A

Methods

method int GetHashCode (A x) Source #

method bool Equals (A x, A y) Source #

method int Compare (A x, A y) Source #

method A Add (A x, A y) Source #

method A Subtract (A x, A y) Source #

method A Multiply (A x, A y) Source #

method A Negate (A x) Source #

method A Abs (A x) Source #

method A Signum (A x) Source #

method A FromInteger (int x) Source #

method A FromDecimal (decimal x) Source #

method A FromFloat (float x) Source #

method A FromDouble (double x) Source #

method A Divide (A x, A y) Source #