mozilla/rust — pull request #10622 by Kimundi (2013-11-23 19:11:49+00:00)
Title: Removed unneccessary `_iter` suffixes from the various APIs

This PR removes almost all `_iter` suffixes in various APIs of the codebase that return Iterators, as discussed in #9440.

As a summarize for the intend behind this PR:

- Iterators are the recommended way to provide a potentially lazy list of values, no need to name them painfully verbose. If anything, functions that return a specific container type should have more verbose names.
- We have a static type system, so no need to encode the return value of a constructor function into its name.

Following is a possibly incomplete list of all renamings I performed in the codebase. For a few of them I'm a bit unsure whether the new name still properly expresses their functionality, so feedback would be welcome:

~~~
&str : word_iter() -> words()
line_iter() -> lines()
any_line_iter() -> lines_any()
iter() -> chars()
char_offset_iter() -> char_indices()
byte_iter() -> bytes()
split_iter() -> split()
splitn_iter() -> splitn()
split_str_iter() -> split_str()
split_terminator_iter() -> split_terminator()
matches_index_iter() -> match_indices()

&[T] : split_iter() -> split()
splitn_iter() -> splitn()
window_iter() -> windows()
chunk_iter() -> chunks()
permutations_iter() -> permutations()

extra:bitv::Bitv : rev_liter() -> rev_iter()
common_iter() -> commons()
outlier_iter() -> outliers()

extra::treemap::{...} : lower_bound_iter() -> lower_bound()
upper_bound_iter() -> upper_bound()

std::trie::{...} : bound_iter() -> bound()
lower_bound_iter() -> lower_bound()
upper_bound_iter() -> upper_bound()

rustpkg::package_id::{...} : prefixes_iter() -> prefixes()

std::hashmap::{...} : difference_iter() -> difference()
symmetric_difference_iter() -> symmetric_difference()
intersection_iter() -> intersection()
union_iter() -> union()

std::path::{posix, windows} : component_iter() -> components()
str_component_iter() -> str_components()

... not showing all identical renamings for reverse versions
~~~

---

I'm also planning a few more changes, like removing all unnecessary `_rev` constructors (#9391), or reducing the `split` variants on `&str` to a more versatile and concise system.