< 返回版块

mook 发表于 2021-12-30 09:56

Tags:rust, 日报

infinitree - 嵌入式加密数据库

Infinitree 是一个嵌入式加密数据库。

  • 默认线程安全
  • 透明地处理热/温/冷存储层;目前支持 S3 兼容的后端
  • 可以使用Iterator trait查询,无需完全加载的版本化数据结构
  • 加密所有磁盘数据,仅在使用时解密
  • 专注于性能和灵活
  • 可扩展的自定义数据类型和存储策略

ReadMore:https://github.com/symmetree-labs/infinitree

嵌入式 Rust 的 2021

随着 2021 年接近尾声,我们认为我们会回顾过去一年在 Embedded Rust 中发生的事情,无论是在工作组内还是在更大的社区中。

  • 会议
  • 通讯
  • 平台支持
  • 其他嵌入式项目
  • 资料库

ReadMore:https://blog.rust-embedded.org/this-year-in-embedded-rust-2021/

for vs into_iter - 新手对 map 的误解

我尝试从结构向量填充 HashMap 的下两个场景之间的区别。

第一个使用for工作正常,并且resolvers填充了 HashMap

let mut resolvers = HashMap::new();
for a in accounts {
    resolvers
        .entry(a.id)
        .or_insert(Vec::new())
        .push(a);
}
Ok(resolvers)

第二个我试图into_iter代替for,但resolvers总是空的。

let mut resolvers = HashMap::new();
accounts.into_iter().map(|a| {
    resolvers
        .entry(a.id)
        .or_insert(Vec::new())
        .push(a);
});
Ok(resolvers)

--

后一段代码 map 是惰性的,需要触发才能运行,比如用collect。或者直接用 for_each来代替 map

ReadMore:https://www.reddit.com/r/rust/comments/rqln6n/for_vs_into_iter/


From 日报小组 冰山上的 mook && Mike

社区学习交流平台订阅:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页