LanguageExt.Core

LanguageExt.Core Deriving

Contents

interface Alternative <Supertype, Subtype> Source #

where Supertype : Alternative<Supertype, Subtype>
where Subtype : Alternative<Subtype>

interface Applicative <Supertype, Subtype> Source #

where Subtype : Applicative<Subtype>
where Supertype : Applicative<Supertype, Subtype>

Derived applicative functor implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface Choice <Supertype, Subtype> Source #

where Supertype : Choice<Supertype, Subtype>
where Subtype : Choice<Subtype>

A semigroup on applicative functors

interface Cofunctor <Supertype, Subtype> Source #

where Subtype : Cofunctor<Subtype>
where Supertype : Cofunctor<Supertype, Subtype>

Derive the class of contravariant functors.

Whereas one can think of a Functor as containing or producing values, a contravariant functor is a functor that can be thought of as consuming values.

Contravariant functors are referred to colloquially as Cofunctor, even though the dual of a Functor is just a Functor.

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface Decidable <Supertype, Subtype> Source #

where Subtype : Decidable<Subtype>
where Supertype : Decidable<Supertype, Subtype>

Derive a Decidable contravariant functor that is the contravariant analogue of Alternative.

Noting the superclass constraint that f must also be Divisible, a Decidable functor has the ability to "fan out" input, under the intuition that contravariant functors consume input.

Parameters

type F

Self referring type

interface Divisible <Supertype, Subtype> Source #

where Subtype : Decidable<Subtype>
where Supertype : Decidable<Supertype, Subtype>

interface Fallible <E, Supertype, Subtype> Source #

where Supertype : Fallible<E, Supertype, Subtype>, Traits.Fallible<E, Supertype>, Traits.Natural<Supertype, Subtype>, Traits.CoNatural<Supertype, Subtype>
where Subtype : Traits.Fallible<E, Subtype>

Trait for higher-kinded structures that have a failure state E

interface Fallible <Supertype, Subtype> Source #

where Supertype : Fallible<Error, Supertype, Subtype>, Traits.Natural<Supertype, Subtype>, Traits.CoNatural<Supertype, Subtype>
where Subtype : Traits.Fallible<Error, Subtype>

Trait for higher-kinded structures that have a failure state E

interface Final <Supertype, Subtype> Source #

where Supertype : Final<Supertype>, Final<Supertype, Subtype>
where Subtype : Final<Subtype>

Derives finally in a try/finally operation

interface Foldable <Supertype, Subtype> Source #

where Supertype : Foldable<Supertype>, Foldable<Supertype, Subtype>
where Subtype : Foldable<Subtype>

interface Functor <Supertype, Subtype> Source #

where Subtype : Functor<Subtype>
where Supertype : Functor<Supertype, Subtype>

Derived functor implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface Monad <Supertype, Subtype> Source #

where Subtype : Monad<Subtype>
where Supertype : Monad<Supertype, Subtype>

Derived monad implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface MonadIO <Supertype, Subtype> Source #

where Subtype : MonadIO<Subtype>, Monad<Subtype>
where Supertype : MonadIO<Supertype, Subtype>, Monad<Supertype>

Derived MonadIO implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface MonadT <Supertype, out M, Subtype> Source #

where Subtype : MonadT<Subtype, M>
where Supertype : MonadT<Supertype, M, Subtype>, MonadT<Supertype, M>
where M : struct, Monad<M>

Derived monad-transformer implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Subtype

The subtype that the supertype type 'wraps'

interface MonoidK <Supertype, Subtype> Source #

where Supertype : MonoidK<Supertype, Subtype>
where Subtype : MonoidK<Subtype>

A monoid for higher-kinds

Parameters

type M

Higher kind

interface Readable <Supertype, Env, Subtype> Source #

where Supertype : Readable<Supertype, Env, Subtype>, Readable<Supertype, Env>
where Subtype : Readable<Subtype, Env>

Derived Readable implementation

Parameters

type Supertype

Super-type wrapper around the subtype

type Env

Reader environment

type Subtype

The subtype that the supertype type 'wraps'

interface SemigroupK <Supertype, Subtype> Source #

where Supertype : SemigroupK<Supertype, Subtype>
where Subtype : SemigroupK<Subtype>

Derived equivalent of semigroups for working with higher-kinded types

interface Stateful <Supertype, Subtype, S> Source #

where Supertype : Stateful<Supertype, Subtype, S>, Stateful<Supertype, S>
where Subtype : Stateful<Subtype, S>

interface Traversable <Supertype, Subtype> Source #

where Supertype : Traversable<Supertype, Subtype>, Traversable<Supertype>
where Subtype : Traversable<Subtype>

Functors representing data structures that can be transformed to structures of the same shape by performing an Applicative (or, therefore, Monad) action on each element from left to right.

A more detailed description of what same shape means, the various methods, how traversals are constructed, and example advanced use-cases can be found in the Overview section of Data.Traversable.

interface Writable <Supertype, Subtype, W> Source #

where Supertype : Writable<Supertype, Subtype, W>, Writable<Supertype, W>
where Subtype : Writable<Subtype, W>
where W : Monoid<W>