plumb 0.2.0

A functional, async pipeline framework
Documentation
  • Coverage
  • 39.06%
    25 out of 64 items documented0 out of 46 items with examples
  • Size
  • Source code size: 34.62 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 14.18 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 11s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • ear7h/plumb
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • ear7h

plumb

A pipeline framework

pub async fn test() -> Result<bool, f32> {
    async fn always_true(_a : i32, _b : i32, _s : &str) -> bool {
        true
    }

    id::<i32>()
    .bind(20 as i32)
    .bind("hello")
    .aseq(always_true)
    .tuple()
    .seq(|b : bool| {
        Ok((!b,))
    })
    .map(|b:bool| {
        !b
    })
    .map_tuple()
    .map_bind("abc")
    .amap(|_b:bool, _s : &str| async {
        false
    })
    .map_tuple()
    .and_then(|_| {
        Err(1.1)
    })
    .run(12).await
}

TODO:

  • documentation
  • map_err
  • or_* methods
  • iter_parallel, fold_parallel