< 返回版块

Folyd 发表于 2021-04-02 20:59

Easy Rust - learn to program in Rust with simple English

Easy Rust 的作者用简单的英语词汇录制了一系列 Rust 教程的视频,发布在了 YouTube。每集 5 到 10 分钟,总共 186 集,23 个小时。

链接:https://www.youtube.com/playlist?list=PLfllocyHVgsRwLkTAhG0E-2QxCf-ozBkk

TypedMap - 一个可以存储不同类型的 HashMap

use typedmap::{TypedMap, TypedMapKey};

// Define key types
#[derive(Debug, PartialEq, Eq, Hash)]
struct Dog{name: String};
#[derive(Debug, PartialEq, Eq, Hash)]
struct Cat{name: String};

struct Bark{volume: u32};
struct Mew{pitch: f32};

// Define value type for key types
impl TypedMapKey for Dog {
    type Value = Bark;
}
impl TypedMapKey for Cat {
    type Value = Mew;
}
// Create a new empty map
let mut animal_sounds: TypedMap = TypedMap::new();
// Insert data
animal_sounds.insert(Dog { name: "Spiky".into() }, Bark { volume: 80 });
animal_sounds.insert(Cat { name: "Spot".into()  }, Mew  { pitch: 12000.0 });

// Get for Dog key get value of type Bark.
let spiky_volume = animal_sounds.get(&Dog { name: "Spiky".into() }).unwrap().volume;
assert_eq!(spiky_volume, 80);

链接:https://crates.io/crates/typedmap

Rust Search Extension v1.2 发布

  • 支持使用 // 前缀搜索 rustc 编译器的源码。
  • 支持直接搜索 Rust 版本号,跳转到该版本的 release 界面。
  • 新的源码跳转模式:在关键字前添加 src:s:,搜索结果会跳转到源码页面。
  • 新的 :blog 命令。

更多请查看 Changelog 页面:https://rust.extension.sh/changelog/


From 日报小组 Folyd

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页