mozilla/rust — pull request #1824 by killerswan (2012-02-12 23:33:31+00:00)
Title: (core::str) mark push/pop/shift byte functions unsafe, rename len functions, and fix replace

Various updates to core::str, including:
* move push_byte, push_bytes, pop_byte, and shift_byte into str::unsafe and mark them unsafe
* rename byte_len -> len_bytes
* rename char_len -> len / len_chars
* rename byte_len_range -> substr_len_bytes and
* rename char_len_range -> substr_len_chars
* fix replace and starts_with (for UTF-8) and add more unicode find/contains/replace test cases

(Third try re: #1819 and #1820.)