I got the following error
error[E0507]: cannot move out of `piece.source` which is behind a shared reference
--> src/buffer.rs:77:37
|
77 | ... source: piece.source,
| ^^^^^^^^^^^^ move occurs because `piece.source` has type `buffer::PieceSource`, which does not implement the `Copy` trait
error[E0507]: cannot move out of `piece.source` which is behind a shared reference
--> src/buffer.rs:84:37
|
84 | ... source: piece.source,
| ^^^^^^^^^^^^ move occurs because `piece.source` has type `buffer::PieceSource`, which does not implement the `Copy` trait
error: aborting due to 2 previous errors
For more information about this error, try `rustc --explain E0507`.
and I don't understand what the compiler means by "move out".