What is the motivation of Rust's ToLowercase
<p>Rust's <code>char</code> has a <a href="https://doc.rust-lang.org/std/primitive.char.html#method.to_lowercase" rel="noreferrer"><code>to_lowercase</code></a> function which seems to return the struct <a href="https://doc.rust-lang.org/std/char/struct.ToLowercase.html" rel="noreferrer"><code>ToLowercase</code></a> which seems to be an iterator with always one element. </p>

<p>Wouldn't returning a <code>char</code> directly be far more natural and simple? </p>