Add explanation for (copy, clone)_from_slice

It elaborates over why we have to slice the 4-size src to 2-size (same as dst).
This commit is contained in:
Anirudh Balaji 2018-06-22 00:20:51 -07:00 committed by GitHub
parent 4b17d31f11
commit 4eca24700b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1541,6 +1541,10 @@ impl<T> [T] {
/// let src = [1, 2, 3, 4];
/// let mut dst = [0, 0];
///
/// // Note: the slices must be the same length, so
/// // you can slice the source to be the same size.
/// // Here we slice the source, four elements, to two, the same size
/// // as the destination slice. It *will* panic if we don't do this.
/// dst.clone_from_slice(&src[2..]);
///
/// assert_eq!(src, [1, 2, 3, 4]);
@ -1607,6 +1611,10 @@ impl<T> [T] {
/// let src = [1, 2, 3, 4];
/// let mut dst = [0, 0];
///
/// // Note: the slices must be the same length, so
/// // you can slice the source to be the same size.
/// // Here we slice the source, four elements, to two, the same size
/// // as the destination slice. It *will* panic if we don't do this.
/// dst.copy_from_slice(&src[2..]);
///
/// assert_eq!(src, [1, 2, 3, 4]);