pub async fn foreign_async_call<F, T, UT>(
    call_scaffolding_function: F
) -> impl Future<Output = T>where
    F: FnOnce(extern "C" fn(_: u64, _: ForeignFutureResult<<T as LiftReturn<UT>>::ReturnType>), u64) -> ForeignFuture,
    T: LiftReturn<UT>,