pub trait Monad<U>: Applicative<U> {
// Required method
fn bind<F>(&self, fs: F) -> Self::T
where F: FnMut(&Self::C) -> Self::T;
// Provided methods
fn return_(x: U) -> Self::T
where Self: HKT<U, C = U> { ... }
fn join<T>(&self) -> T
where Self: HKT<U, T = T, C = T>,
T: Clone { ... }
}
Required Methods§
Provided Methods§
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.