That's not entirely true. If you have a non-move
closure that uses a capture by value, that value will be moved once into the closure state and then again where it is used, and the closure will be FnOnce
. But if that value has a Copy
type, it will be captured by reference instead, only copied at the use within the closure, and the closure may be Fn
/FnMut
.
2 Likes