id_effect 0.4.0

Effect<A, E, R> (sync + async), capability DI, pipe — interpreter-style, no bundled executor
Documentation
error[E0277]: the trait bound `MissingCap: Clone` is not satisfied
 --> tests/ui/missing_capability.rs:7:21
  |
7 |     let _ = Needs::<MissingCap>::need(r);
  |                     ^^^^^^^^^^ the trait `Clone` is not implemented for `MissingCap`
  |
note: required by a bound in `need`
 --> src/capability/needs.rs
  |
  |   T: Clone + Send + Sync + 'static,
  |      ^^^^^ required by this bound in `Needs::need`
...
  |   fn need(&self) -> &T;
  |      ---- required by a bound in this associated function
help: consider annotating `MissingCap` with `#[derive(Clone)]`
  |
3 + #[derive(Clone)]
4 | struct MissingCap;
  |

error[E0277]: the trait bound `MissingCap: Clone` is not satisfied
 --> tests/ui/missing_capability.rs:7:39
  |
7 |     let _ = Needs::<MissingCap>::need(r);
  |             ------------------------- ^ the trait `Clone` is not implemented for `MissingCap`
  |             |
  |             required by a bound introduced by this call
  |
help: the trait `Needs<T>` is implemented for `Env`
 --> src/capability/needs.rs
  |
  | / impl<T> Needs<T> for Env
  | | where
  | |   T: Clone + Send + Sync + 'static,
  | |___________________________________^
  = note: required for `()` to implement `Needs<MissingCap>`
help: consider annotating `MissingCap` with `#[derive(Clone)]`
  |
3 + #[derive(Clone)]
4 | struct MissingCap;
  |

error[E0277]: the trait bound `(): Needs<MissingCap>` is not satisfied
 --> tests/ui/missing_capability.rs:7:39
  |
7 |     let _ = Needs::<MissingCap>::need(r);
  |             ------------------------- ^ the trait `Deref` is not implemented for `()`
  |             |
  |             required by a bound introduced by this call
  |
help: the trait `Needs<T>` is implemented for `Env`
 --> src/capability/needs.rs
  |
  | / impl<T> Needs<T> for Env
  | | where
  | |   T: Clone + Send + Sync + 'static,
  | |___________________________________^
  = note: required for `()` to implement `Needs<MissingCap>`