10 次重大发布

0.11.0 2024年7月3日
0.9.0 2024年7月3日

#1581 in Rust 模式

Download history 283/week @ 2024-06-24 308/week @ 2024-07-01 98/week @ 2024-07-29

102 个月下载量

MIT 许可证

4KB

delegare

优点

  • auto_delegatecrate 更快
  • deleagatecrate 更容易

缺点

此crate的示例

#[delegate]
pub trait Read {
    fn read(&self) -> &usize;
}

#[derive(Delegate)]
struct Wrapper<R>
where
    R: Read,
{
    #[to(Read)]
    inner: R,
}

struct Io {
    value: usize,
}

impl Read for Io {
    fn read(&self) -> &usize {
        &self.value
    }
}

fn main() {
    let wrapper = Wrapper {
        inner: Io { value: 1 },
    };
    wrapper.read();
}

依赖项

~270–720KB
~17K SLoC