Rust内联
在 Rust 中有很多关于 #[inline] 属性的知识。我发现自己经常在教别人它是如何工作的,所以我最终决定把它写下来。
额外说明:这是我所知道的,不一定是真实的。此外,#[inline] 的确切语义不是一成不变的,在未来的 Rust 版本中可能会发生变化。
为什么内联很重要?
内联是一种将函数调用替换为函数体的一种优化转换。举个简单的例子,在编译期间,编译器可以转换如下代码:
fn f(w: u32) -> u32 {
inline_me(w, 2)
}
fn inline_me(x: u32, y: u32) -> u32 {
x * y
}
转换后:
fn f(w: u32) -> u32 {
w * 2
}
文章链接,https://matklad.github.io/2021/07/09/inline-in-rust.html
Arti: 一个纯Rust实现的Tor
今天,我很高兴地宣布 Tor 的新时代实现。
在过去一年左右的时间里,我们一直致力于“Arti”,这是一个用 Rust 重写 Tor 的项目。感谢 Zcash Open Major Grants (ZOMG) 的资助,我们终于可以将 Arti 项目列入我们的优先事项列表,并投入更多时间。
下面我将谈谈我们为什么要做这个项目,它对 Tor 用户和运营商意味着什么,它的未来发展方向,以及人们可以如何提供帮助。
文章链接,
https://blog.torproject.org/announcing-arti
Gitlab 链接,https://gitlab.torproject.org/tpo/core/arti/
fltk-rs: 1.1.0发布
fltk-rs 是 FLTK(gui 库)的 Rust Wrapper。自 1.0.0 版以来的主要更新:
fltk-rs 移到了自己的 github 组织,里面也包含了与 fltk-rs 相关的工具,比如 fltk-calendar、fl2rust(fluid to rust transpiler)、fltk-fluid、fltk-webview...等。
在 Windows 上使用 gdi+ 支持更新到最新的 FLTK(用于抗锯齿斜线和曲线)。 ...
文章链接,https://www.reddit.com/r/rust/comments/ohftsq/fltkrs_version_110_released/
Gitlab 链接,
https://github.com/fltk-rs/fltk-rs