rust/src/libcore
Aaron Turon 8389253df0 Add generic conversion traits
This commit:

* Introduces `std::convert`, providing an implementation of
RFC 529.

* Deprecates the `AsPath`, `AsOsStr`, and `IntoBytes` traits, all
in favor of the corresponding generic conversion traits.

  Consequently, various IO APIs now take `AsRef<Path>` rather than
`AsPath`, and so on. Since the types provided by `std` implement both
traits, this should cause relatively little breakage.

* Deprecates many `from_foo` constructors in favor of `from`.

* Changes `PathBuf::new` to take no argument (creating an empty buffer,
  as per convention). The previous behavior is now available as
  `PathBuf::from`.

* De-stabilizes `IntoCow`. It's not clear whether we need this separate trait.

Closes #22751
Closes #14433

[breaking-change]
2015-03-23 15:01:45 -07:00
..
fmt Auto merge of #23162 - sfackler:debug-builders, r=alexcrichton 2015-03-12 07:30:44 +00:00
hash remove mention of specialization from Hash trait 2015-03-12 18:09:52 -04:00
num Auto merge of #23254 - jbcrail:saturating-math-docs, r=steveklabnik 2015-03-20 01:35:54 +00:00
str Add generic conversion traits 2015-03-23 15:01:45 -07:00
any.rs Register new snapshots 2015-03-18 16:32:32 -07:00
array.rs Avoid metadata bloat by using trait FixedSizeArray 2015-03-18 00:40:59 +03:00
atomic.rs Enable recursion for visit_ty in lint visitor 2015-03-02 15:35:48 -08:00
cell.rs core: Inline most cell methods. 2015-03-19 08:24:40 +05:30
char.rs std: Stabilize more of the char module 2015-03-10 15:08:31 -07:00
clone.rs core: Use int/isize in Clone boilerplate 2015-02-14 15:50:26 -08:00
cmp.rs Audit core::cmp for int/uint. 2015-02-18 14:39:06 +01:00
cmp_macros.rs Tweaks to equality comparisons for slices/arrays/vectors 2015-02-20 20:32:55 +03:00
convert.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
default.rs Strip all leading/trailing newlines 2015-03-15 09:08:21 -07:00
error.rs Rename std::path to std::old_path 2015-02-03 14:34:42 -08:00
finally.rs Strip all leading/trailing newlines 2015-03-15 09:08:21 -07:00
intrinsics.rs Register new snapshots 2015-03-18 16:32:32 -07:00
iter.rs std: Stabilize IteratorExt::cloned 2015-03-17 18:05:58 -07:00
lib.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
macros.rs std: Remove old_io/old_path from the prelude 2015-03-20 20:07:19 -07:00
marker.rs Remove explicit syntax highlight from docs. 2015-03-13 19:25:18 -04:00
mem.rs Remove explicit syntax highlight from docs. 2015-03-13 19:25:18 -04:00
nonzero.rs Rewrite Unique<T> so that it is covariant in T, implies NonZero and ownership, 2015-02-18 10:25:12 -05:00
ops.rs Remove explicit syntax highlight from docs. 2015-03-13 19:25:18 -04:00
option.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
panicking.rs Remove core::panicking::panic's dependence on str's Display::fmt impl 2015-03-10 22:21:30 -07:00
prelude.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
ptr.rs Register new snapshots 2015-03-18 16:32:32 -07:00
raw.rs Enable recursion for visit_ty in lint visitor 2015-03-02 15:35:48 -08:00
result.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
simd.rs s/Show/Debug/g 2015-01-29 07:49:02 -05:00
slice.rs Add generic conversion traits 2015-03-23 15:01:45 -07:00
tuple.rs core: Update tuple doc 2015-03-15 18:16:03 +01:00
ty.rs markers -> marker 2015-01-07 12:10:31 +13:00