Range is just a pair of integers and cloning it is cheap. You should just clone it.
Range and &Range don't implement IntoIterator because Range is an Iterator itself and reference iteration is not possible because iterator elements are not stored anywhere but it is generated and copied (thus a reference to it doesn't live long enough).