Closed rvolosatovs closed 1 month ago
I'm not sure that's actually desired, I think this is much cleaner solved on application level, e.g. https://github.com/wrpc/blobstore/commit/fcc2dfca2ad9c8cb1c3cc64cd27bba3514d8f5a0
This way the server can decide to either fully consume the value and return result in the original invocation or return a future with a result
Currently, async I/O future is generated for client bindings, when either parameter or result tuples contain at least one async type, we should do something similar for exports - probably generating
impl Future<Output = anyhow::Result>
as the last element in the tuple and failing the transmission if an error is returned (instead of a clean byte stream shutdown)