split-async 0.1.1

A procedural macro to generate sync and async versions of a function
Documentation
use split_async::split;
mod part1 {
    #[split]
    async fn part1(x: usize) -> usize {
        x + 1
    }
}
mod part2 {
    mod nested {
        #[split(foo, bar)]
        async fn part2(x: usize) {
            x + 3
        }
    }
}
fn sync_func() {
    let part1 = part1::sync_part1;
    let part2 = part2::nested::foo;
    let x = part2(part1(0));
}
async fn async_func() {
    let part1 = part1::async_part1;
    let part2 = part2::nested::bar;
    let x = part2(part1(0).await).await;
}