10 个重大版本发布
0.11.0 | 2024年7月3日 |
---|---|
0.9.0 | 2024年7月3日 |
#4 in #delegatable
113 每月下载量
用于 delegare
9KB
170 代码行数(不包括注释)
delegare
优点
- 比
auto_delegate
crate 更快 - 比
deleagate
crate 更容易使用
缺点
- 所有可委托的特质都必须是 对象安全的。
此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();
}
依赖关系
~315–780KB
~19K SLoC