提交 bef5396a 编写于 作者: A Andrew Paseltiner

core: implement Clone for primitive types

上级 a5fae1da
......@@ -19,3 +19,31 @@ impl Clone for () {
#[inline(always)]
fn clone(&self) -> () { () }
}
macro_rules! clone_impl(
($t:ty) => {
impl Clone for $t {
#[inline(always)]
fn clone(&self) -> $t { *self }
}
}
)
clone_impl!(int)
clone_impl!(i8)
clone_impl!(i16)
clone_impl!(i32)
clone_impl!(i64)
clone_impl!(uint)
clone_impl!(u8)
clone_impl!(u16)
clone_impl!(u32)
clone_impl!(u64)
clone_impl!(float)
clone_impl!(f32)
clone_impl!(f64)
clone_impl!(bool)
clone_impl!(char)
#[deriving_clone]
struct S {
foo: (),
bar: ()
_int: int,
_i8: i8,
_i16: i16,
_i32: i32,
_i64: i64,
_uint: uint,
_u8: u8,
_u16: u16,
_u32: u32,
_u64: u64,
_float: float,
_f32: f32,
_f64: f64,
_bool: bool,
_char: char,
_nil: ()
}
fn main() {}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册