IxStateT overview
When applying module augmentation when creating types, ensure that there are 2 declarations.
See IxState
for more details.
Added in v2.10.0
Table of contents
- Apply
- Chain
- Functor
- IxApply
- IxChain
- IxFunctor
- IxPointed
- Pointed
- combinators
- constructors
- destructors
- model
Apply
ap
Apply a function to an argument under a type constructor.
Signature
export declare function ap<F extends URIS2>(
F: Chain2<F>
): <I, E, A>(fa: IxStateT2<F, I, I, E, A>) => <B>(fab: IxStateT2<F, I, I, E, (a: A) => B>) => IxStateT2<F, I, I, E, B>
export declare function ap<F extends URIS>(
F: Chain1<F>
): <I, A>(fa: IxStateT1<F, I, I, A>) => <B>(fab: IxStateT1<F, I, I, (a: A) => B>) => IxStateT1<F, I, I, B>
export declare function ap<F>(
F: Chain<F>
): <I, A>(fa: IxStateT<F, I, I, A>) => <B>(fab: IxStateT<F, I, I, (a: A) => B>) => IxStateT<F, I, I, B>
Added in v2.10.0
Chain
chain
Composes computations in sequence, using the return value of one computation to determine the next computation.
Signature
export declare function chain<F extends URIS2>(
F: Chain2<F>
): <I, E, A, B>(f: (a: A) => IxStateT2<F, I, I, E, B>) => (fa: IxStateT2<F, I, I, E, A>) => IxStateT2<F, I, I, E, B>
export declare function chain<F extends URIS>(
F: Chain1<F>
): <I, A, B>(f: (a: A) => IxStateT1<F, I, I, B>) => (fa: IxStateT1<F, I, I, A>) => IxStateT1<F, I, I, B>
export declare function chain<F>(
F: Chain<F>
): <I, A, B>(f: (a: A) => IxStateT<F, I, I, B>) => (fa: IxStateT<F, I, I, A>) => IxStateT<F, I, I, B>
Added in v2.10.0
Functor
map
map
can be used to turn functions (a: A) => B
into functions (fa: F<A>) => F<B>
whose argument and return types use the type constructor F
to represent some computational context.
Signature
export declare const map: typeof ixmap
Added in v2.10.0
IxApply
ixap
Apply a function to an argument under a type constructor.
Signature
export declare function ixap<F extends URIS2>(
F: Chain2<F>
): <O, Z, E, A>(
fa: IxStateT2<F, O, Z, E, A>
) => <I, B>(fab: IxStateT2<F, I, O, E, (a: A) => B>) => IxStateT2<F, I, Z, E, B>
export declare function ixap<F extends URIS>(
F: Chain1<F>
): <O, Z, A>(fa: IxStateT1<F, O, Z, A>) => <I, B>(fab: IxStateT1<F, I, O, (a: A) => B>) => IxStateT1<F, I, Z, B>
export declare function ixap<F>(
F: Chain<F>
): <O, Z, A>(fa: IxStateT<F, O, Z, A>) => <I, B>(fab: IxStateT<F, I, O, (a: A) => B>) => IxStateT<F, I, Z, B>
Added in v2.10.0
IxChain
ixchain
Composes computations in sequence, using the return value of one computation to determine the next computation.
Signature
export declare function ixchain<F extends URIS2>(
F: Chain2<F>
): <O, Z, E, A, B>(
f: (a: A) => IxStateT2<F, O, Z, E, B>
) => <I>(fa: IxStateT2<F, I, O, E, A>) => IxStateT2<F, I, Z, E, B>
export declare function ixchain<F extends URIS>(
F: Chain1<F>
): <O, Z, A, B>(f: (a: A) => IxStateT1<F, O, Z, B>) => <I>(fa: IxStateT1<F, I, O, A>) => IxStateT1<F, I, Z, B>
export declare function ixchain<F>(
F: Chain<F>
): <O, Z, A, B>(f: (a: A) => IxStateT<F, O, Z, B>) => <I>(fa: IxStateT<F, I, O, A>) => IxStateT<F, I, Z, B>
Added in v2.10.0
IxFunctor
ixmap
map
can be used to turn functions (a: A) => B
into functions (fa: F<A>) => F<B>
whose argument and return types use the type constructor F
to represent some computational context.
Signature
export declare function ixmap<F extends URIS2>(
F: Functor2<F>
): <A, B>(f: (a: A) => B) => <I, O, E>(fa: IxStateT2<F, I, O, E, A>) => IxStateT2<F, I, O, E, B>
export declare function ixmap<F extends URIS>(
F: Functor1<F>
): <A, B>(f: (a: A) => B) => <I, O>(fa: IxStateT1<F, I, O, A>) => IxStateT1<F, I, O, B>
export declare function ixmap<F>(
F: Functor<F>
): <A, B>(f: (a: A) => B) => <I, O>(fa: IxStateT<F, I, O, A>) => IxStateT<F, I, O, B>
Added in v2.10.0
IxPointed
ixof
Signature
export declare function ixof<F extends URIS2>(F: Pointed2<F>): <S, E, A>(a: A) => IxStateT2<F, S, S, E, A>
export declare function ixof<F extends URIS>(F: Pointed1<F>): <S, A>(a: A) => IxStateT1<F, S, S, A>
export declare function ixof<F>(F: Pointed<F>): <S, A>(a: A) => IxStateT<F, S, S, A>
Added in v2.10.0
Pointed
of
Signature
export declare const of: typeof ixof
Added in v2.10.0
combinators
local
Changes the value of the local context during the execution of the action ma
(similar to Contravariant
’s contramap
).
Signature
export declare function local<F extends URIS2>(): <I, X>(
f: (x: X) => I
) => <O, E, A>(fa: IxStateT2<F, I, O, E, A>) => IxStateT2<F, X, O, E, A>
export declare function local<F extends URIS>(): <I, X>(
f: (x: X) => I
) => <O, A>(fa: IxStateT1<F, I, O, A>) => IxStateT1<F, X, O, A>
export declare function local<F>(): <I, X>(f: (x: X) => I) => <O, A>(fa: IxStateT<F, I, O, A>) => IxStateT<F, X, O, A>
Added in v2.10.0
constructors
fromStateF
Signature
export declare function fromStateF<F extends URIS2>(): <S, E, A>(fa: StateT2<F, S, E, A>) => IxStateT2<F, S, S, E, A>
export declare function fromStateF<F extends URIS>(): <S, A>(fa: StateT1<F, S, A>) => IxStateT1<F, S, S, A>
export declare function fromStateF<F>(): <R, A>(fa: StateT<F, R, A>) => IxStateT<F, R, R, A>
Added in v2.10.0
get
Signature
export declare function get<F extends URIS2>(F: Pointed2<F>): <I, E>() => IxStateT2<F, I, I, E, I>
export declare function get<F extends URIS>(F: Pointed1<F>): <I>() => IxStateT1<F, I, I, I>
export declare function get<F>(F: Pointed<F>): <I>() => IxStateT<F, I, I, I>
Added in v2.10.0
gets
Signature
export declare function gets<F extends URIS2>(F: Pointed2<F>): <I, E, A>(f: (i: I) => A) => IxStateT2<F, I, I, E, A>
export declare function gets<F extends URIS>(F: Pointed1<F>): <I, A>(f: (i: I) => A) => IxStateT1<F, I, I, A>
export declare function gets<F>(F: Pointed<F>): <I, A>(f: (i: I) => A) => IxStateT<F, I, I, A>
Added in v2.10.0
ixmodify
Signature
export declare function ixmodify<F extends URIS2>(
F: Pointed2<F>
): <S, R, E>(f: (i: S) => R) => IxStateT2<F, S, R, E, void>
export declare function ixmodify<F extends URIS>(F: Pointed1<F>): <R, E>(f: (i: R) => E) => IxStateT1<F, R, E, void>
export declare function ixmodify<F>(F: Pointed<F>): <R, E>(f: (i: R) => E) => IxStateT<F, R, E, void>
Added in v2.10.0
put
Signature
export declare function put<F extends URIS2>(F: Pointed2<F>): <I, E>(i: I) => IxStateT2<F, I, I, E, void>
export declare function put<F extends URIS>(F: Pointed1<F>): <I>(i: I) => IxStateT1<F, I, I, void>
export declare function put<F>(F: Pointed<F>): <I>(i: I) => IxStateT<F, I, I, void>
Added in v2.10.0
destructors
evaluate
Signature
export declare function evaluate<F extends URIS2>(
F: Functor2<F>
): <I>(i: I) => <O, E, A>(fa: IxStateT2<F, I, O, E, A>) => Kind2<F, E, A>
export declare function evaluate<F extends URIS>(
F: Functor1<F>
): <I>(i: I) => <O, A>(fa: IxStateT1<F, I, O, A>) => Kind<F, A>
export declare function evaluate<F>(F: Functor<F>): <I>(i: I) => <O, A>(fa: IxStateT<F, I, O, A>) => HKT<F, A>
Added in v2.10.0
ixexecute
Signature
export declare function ixexecute<F extends URIS2>(
F: Functor2<F>
): <I, E>(i: I) => <O, A>(fa: IxStateT2<F, I, O, E, A>) => Kind2<F, E, O>
export declare function ixexecute<F extends URIS>(
F: Functor1<F>
): <I>(i: I) => <O, A>(fa: IxStateT1<F, I, O, A>) => Kind<F, O>
export declare function ixexecute<F>(F: Functor<F>): <I>(i: I) => <O, A>(fa: IxStateT<F, I, O, A>) => HKT<F, O>
Added in v2.10.0
toStateF
Signature
export declare function toStateF<F extends URIS2>(): <R, E, A>(fa: IxStateT2<F, R, R, E, A>) => StateT2<F, R, E, A>
export declare function toStateF<F extends URIS>(): <E, A>(fa: IxStateT1<F, E, E, A>) => StateT1<F, E, A>
export declare function toStateF<F>(): <E, A>(fa: IxStateT<F, E, E, A>) => StateT<F, E, A>
Added in v2.10.0
model
IxStateT (interface)
Signature
export interface IxStateT<F, R, E, A> {
(i: R): HKT<F, [A, E]>
}
Added in v2.10.0
IxStateT1 (interface)
Signature
export interface IxStateT1<F extends URIS, R, E, A> {
(i: R): Kind<F, [A, E]>
}
Added in v2.10.0
IxStateT2 (interface)
Signature
export interface IxStateT2<F extends URIS2, S, R, E, A> {
(i: S): Kind2<F, E, [A, R]>
}
Added in v2.10.0