ambassador 程序宏實作的委派 trait (Delegation of trait implementations via procedural macros)
目前只支援 1.40
比如你有貓跟狗都會叫,然後你有個動物enum在上層
想要模仿繼承的感覺,那就是他
use ambassador::{delegatable_trait, Delegate};
#[delegatable_trait]
pub trait Shout {
fn shout(&self, input: &str) -> String;
}
pub struct Cat;
impl Shout for Cat {
fn shout(&self, input: &str) -> String {
format!("{} - meow!", input)
}
}
pub struct Dog;
impl Shout for Dog {
fn shout(&self, input: &str) -> String {
format!("{} - wuff!", input)
}
}
#[derive(Delegate)]
#[delegate(Shout)]
pub enum Animal {
Cat(Cat),
Dog(Dog),
}
pub fn main() {
let foo_animal = Animal::Cat(Cat);
println!("{}", foo_animal.shout("BAR"));
}
repotools rust縮寫指令小工具
將 git diff, git add -A, git status, git diff --cached, git commit -m <message>, git push and git shortlog -se
用 dp, aa, st, di, cm, pu and le
取代
rayn 0.3
SIMD 加速
分形渲染
MIDI 實體播放器使用 AD9833與 BluePill版子
有人使用了rust結合硬體做了 MIDI 播放器
對嵌入式有興趣的朋友不要錯過了
From 日报小组 @Damody
日报订阅地址:
独立日报订阅地址:
社区学习交流平台订阅:
1
共 0 条评论, 1 页
评论区
写评论还没有评论