Io 如何使用拦截器将字节从读卡器传输到写卡器?

Io 如何使用拦截器将字节从读卡器传输到写卡器?,io,rust,Io,Rust,如何执行std::io::copy&mut from、&mut to;、之类的操作;,但是中间有拦截器吗?因此,例如,我可以对整个流执行SHA-256哈希?字节流哈希器和其他原始流处理器实现写操作是常见且良好的做法,通过写操作,可以将流馈送到进程中,请参见例如 因此,数据流拦截的解决方案是1。确保处理器确实实现了写操作,2。制作一个编写器类型,同时将编写过程复制到两个独立的编写器。我发现至少有一个板条箱提供了这种机制,但是手工实现应该不会太复杂 有了它,就可以为截获的副本派生一个新的函数签名 f

如何执行std::io::copy&mut from、&mut to;、之类的操作;,但是中间有拦截器吗?因此,例如,我可以对整个流执行SHA-256哈希?

字节流哈希器和其他原始流处理器实现写操作是常见且良好的做法,通过写操作,可以将流馈送到进程中,请参见例如

因此,数据流拦截的解决方案是1。确保处理器确实实现了写操作,2。制作一个编写器类型,同时将编写过程复制到两个独立的编写器。我发现至少有一个板条箱提供了这种机制,但是手工实现应该不会太复杂

有了它,就可以为截获的副本派生一个新的函数签名

fn拷贝截取 输入:&mut I, 输出:&mut O, 截获:&mut M, ->std::io::Result 哪里 I:读, O:写, M:写, { std::io::copyinput,&mut BroadcastWriter::newoutput,intercept }
如果拦截器是您自己的,您只需为它实现Write。