future_form 0.3.1

Abstractions over Send and !Send futures
Documentation
use std::marker::PhantomData;
use future_form::{FutureForm, future_form};

trait Counter<K: FutureForm> {
    fn next(&self) -> K::Future<'_, u32>;
}

struct Memory<K> {
    _marker: PhantomData<K>,
}

#[future_form]
impl<K: FutureForm> Counter<K> for Memory<K> {
    fn next(&self) -> K::Future<'_, u32> {
        K::from_future(async move { 42 })
    }
}

fn main() {}