#macro #meta #newtype-structs

qnewtype

创建 newtype-structs 的简单宏

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2016 年 5 月 29 日

#88#meta

CC0 许可

4KB

创建 newtype-structs 的简单宏 (MyType(X)).

qnewtype! {
    #[meta]...
    [pub] type MyType: X;

    ...
}

对应于

#[meta]...
[pub] struct MyType(X);

impl From<X> for MyType {
    ...
}

impl Into<X> for MyType {
    ...
}

impl ::std::ops::Deref for MyType {
    type Target = X;
    ...
}

impl ::std::ops::DerefMut for MyType {
    ...
}

...

如果只有一个语句,你可以省略分号。

qnewtype!([pub] type MyType: X);

无运行时依赖