rust/src/libcore
bors 0bd99f9d5c Auto merge of #35656 - Stebalien:fused, r=alexcrichton
Implement 1581 (FusedIterator)

* [ ] Implement on patterns. See https://github.com/rust-lang/rust/issues/27721#issuecomment-239638642.
* [ ] Handle OS Iterators. A bunch of iterators (`Args`, `Env`, etc.) in libstd wrap platform specific iterators. The current ones all appear to be well-behaved but can we assume that future ones will be?
* [ ] Does someone want to audit this? On first glance, all of the iterators on which I implemented `FusedIterator` appear to be well-behaved but there are a *lot* of them so a second pair of eyes would be nice.
* I haven't touched rustc internal iterators (or the internal rand) because rustc doesn't actually call `fuse()`.
* `FusedIterator` can't be implemented on `std::io::{Bytes, Chars}`.

Closes: #35602 (Tracking Issue)
Implements: rust-lang/rfcs#1581
2016-08-23 07:46:52 -07:00
..
fmt Remove old stage0 compatibility 2016-08-19 20:26:10 +00:00
hash Add BuildHasher example 2016-07-22 16:38:16 +02:00
iter Auto merge of #35656 - Stebalien:fused, r=alexcrichton 2016-08-23 07:46:52 -07:00
num Add non-panicking abs() functions to all signed integer types. 2016-07-28 09:05:43 -07:00
prelude Add missing annotations and some tests 2015-11-18 01:24:21 +03:00
str Add a FusedIterator trait. 2016-08-18 12:16:29 -04:00
sync Auto merge of #35719 - Amanieu:atomic_access, r=alexcrichton 2016-08-18 18:44:54 -07:00
any.rs Improve std::any module doc 2016-07-10 19:41:50 +02:00
array.rs Fix broken links for core primitives 2016-03-01 20:44:48 +08:00
borrow.rs Move the Borrow and BorrowMut traits to libcore. 2015-08-22 13:58:39 +02:00
Cargo.toml No build.rs for libcore 2016-06-04 15:10:26 -07:00
cell.rs Auto merge of #35627 - apasel422:coerce-cell, r=alexcrichton 2016-08-23 04:16:28 -07:00
char.rs Add a FusedIterator trait. 2016-08-18 12:16:29 -04:00
char_private.rs Escape fewer Unicode codepoints in Debug impl of str 2016-07-23 00:18:44 +02:00
clone.rs Prefer ClassName over Self in example trait implementations 2016-05-23 13:14:15 -04:00
cmp.rs Remove old stage0 compatibility 2016-08-19 20:26:10 +00:00
convert.rs fix small typos in std::convert documentation 2016-08-12 12:20:56 -04:00
default.rs Move all Default docs from module to trait 2016-05-23 13:47:28 -04:00
intrinsics.rs Rollup merge of #34609 - ubsan:transmute_docs, r=steveklabnik 2016-07-26 17:21:11 -04:00
iter_private.rs specialize zip: Introduce TrustedRandomAccess trait 2016-06-14 15:50:49 +02:00
lib.rs Remove old stage0 compatibility 2016-08-19 20:26:10 +00:00
macros.rs Be more explicit about duck typing 2016-08-04 04:33:50 +03:00
marker.rs Add Derive not possible question to Copy 2016-08-01 05:43:13 +00:00
mem.rs Support 16-bit pointers as well as i/usize 2016-05-19 13:55:13 -04:00
nonzero.rs Register new snapshots 2015-12-21 09:26:21 -08:00
ops.rs Rollup merge of #35864 - matthew-piziak:index-example, r=GuillaumeGomez 2016-08-22 15:34:21 -07:00
option.rs Add a FusedIterator trait. 2016-08-18 12:16:29 -04:00
panicking.rs Mark all extern functions as nounwind 2015-09-14 11:36:09 +02:00
ptr.rs replace println! statements with assert!ions in std::ptr examples 2016-08-21 16:49:09 -04:00
raw.rs Clean up std::raw docs 2016-08-05 17:52:37 -04:00
result.rs Add a FusedIterator trait. 2016-08-18 12:16:29 -04:00
slice.rs Add a FusedIterator trait. 2016-08-18 12:16:29 -04:00
tuple.rs Properly document tuples 2016-02-09 16:00:50 -05:00