Box totally implements Send: https://doc.rust-lang.org/std/boxed/struct.Box.html#syntheti...
Also I'm not sure how ? obscures control flow to the same level as C++, which propagates exceptions with no syntactic marker at all.
Also I'm not sure how ? obscures control flow to the same level as C++, which propagates exceptions with no syntactic marker at all.
Also I’m quite sure Box doesn’t. I’ve seen compiler errors when attempting to pass one via mpsc.
If you're trying to send a value to another thread, Rust will only stop you if the author of some type somewhere inside it has opted out, and none of its containers ever opted back in (as Box does).
The error message does drill down and tell you the actual type causing the lack of Send impl.
The only time you have to manually impl Send is for custom container types that are built from raw primitives.