Implement Borrow for fixed-size arrays

This commit is contained in:
Vadim Petrochenkov 2015-09-03 19:35:26 +03:00
parent 9e9c83b899
commit 52417d5b5c

View file

@ -19,6 +19,7 @@
integer constants",
issue = "27778")]
use borrow::{Borrow, BorrowMut};
use clone::Clone;
use cmp::{PartialEq, Eq, PartialOrd, Ord, Ordering};
use convert::{AsRef, AsMut};
@ -70,6 +71,20 @@ macro_rules! array_impls {
}
}
#[stable(feature = "array_borrow", since = "1.4.0")]
impl<T> Borrow<[T]> for [T; $N] {
fn borrow(&self) -> &[T] {
self
}
}
#[stable(feature = "array_borrow", since = "1.4.0")]
impl<T> BorrowMut<[T]> for [T; $N] {
fn borrow_mut(&mut self) -> &mut [T] {
self
}
}
#[stable(feature = "rust1", since = "1.0.0")]
impl<T:Copy> Clone for [T; $N] {
fn clone(&self) -> [T; $N] {