Crate fp_rust[][src]

Modules

common

In this module, there're many traits/structs and fns defined, for general purposes crossing over many modules of fpRust.

cor

In this module there're implementations & tests of Cor.

fp

In this module there're implementations & tests of general functional programming features.

handler

In this module there're implementations & tests of Handler. (Inspired by Android Handler)

maybe

In this module there're implementations & tests of Maybe.

monadio

In this module there're implementations & tests of MonadIO. It's inspired by Rx & MonadIO in Haskell

publisher

In this module, there're implementations & tests of Publisher

sync

In this module there're implementations & tests of general async handling features.

Macros

compose

Compose functions.

contains

Contains macro for Vec<T>, in currying ways by partial_left_last_one!().

cor_newmutex

Define a new Cor with type. It will return a Arc<Mutex<Cor>>.

cor_newmutex_and_start

Define a new Cor with type and start it immediately. It will return a Arc<Mutex<Cor>>.

cor_start

Start this Cor.

cor_yield

Make this returns a given Option<RETURN> given_to_outside to its callee Cor, and this method returns the Option<RECEIVE> value given from outside.

cor_yield_from

Make this sends a given Option<RECEIVETARGET> to target, and this method returns the Option<RETURNTARGET> response from target.

do_m

Run codes inside a doM block(Haskell do notation) (this is a sync macro)

do_m_pattern

Run codes inside a doM block(Haskell do notation) (this is a sync macro)

filter

Filter macro for Vec<T>, in currying ways by partial_left_last_one!().

foldl

Foldl macro for Vec<T>, in currying ways by partial_left_last_one!().

foldr

Foldr macro for Vec<T>, in currying ways by partial_left_last_one!().

map

Map macro for Vec<T>, in currying ways by partial_left_last_one!().

map_insert

Insert key-value pairs into the given map

partial_left_last_one

Partial application macro with variadic arguments for a pre-defined function, and currying the lastest one argument by returning closure.

pipe

Pipe functions.

reduce

Reduce macro for Vec<T>, in currying ways by partial_left_last_one!().

reverse

Reverse macro for Vec<T>, in currying ways.

spread_and_call

Spread the variadic arguments and call the given funciton.