【Rust日报】 2019-05-07:Await 语法预告

Await 语法预告

来自汉东兄。

今天看了withoutboats发的博文,是关于Rust await语法的最后讨论结果,也许会有变化,但应该差不多了。 这我看完文章后总结的一张脑图,分享一下。

【Rust日报】 2019-05-07:Await 语法预告


官方语言核心团队倾向于 .await 这种后缀语法。社区也是炸开锅各抒己见的。

最终决定会在5月23号做出。不管怎样,我支持官方的决定。

Read More

ifmt - 插值式格式化宏库

其实其它语言很多都有了。Rust一直显得比较生硬,格式化一个带变量值的字符串,要这样写:

println!("x: {x}, y: {y}, x + y: {sum}", x=x, y=y, sum=x+y);

使用这个库,可以这么写了。

let four = 4;
iprintln!("four plus four is: {four + 4}");
// four plus four is: 8
iprintln!("here's a hex number: 0x{0xb0bi64 * 1321517i64 :x}");
// here's a hex number: 0xdeadbeef
iprintln!("here's a debugging value: {Some(four):?}");
// here's a debugging value: Some(4)

作者把一套宏全部“升级”了。

format!      -> iformat!
print!       -> iprint!
println!     -> iprintln!
eprint!      -> ieprint!
eprintln!    -> ieprintln!
write!       -> iwrite!
writeln!     -> iwriteln!
format_args! -> iformat_args!

Repo

ansi-parser - ANSI转义序列解析库

ANSI转义序列 就是这种 "This is \u{1b}[3Asome text!",我们平时在终端下看到的文字的色彩啊,一些特效格式啊什么的,都是按这个标准来做的。

相似的库还有 vte

Repo

柏林都举行了 100 场 Rust 碰面聚会了

欧洲人很爱 Rust?大家都爱嘛。他们从 2014 年起就开始进行Rust聚会了。国内要更多点才好。不仅是大会,各个城市的小会也搞起来。

Read More

trybuild - 强力的库级用户界面测试套件

这里的用户界面指的是,一个库,提供给别人使用的界面。通常来说,可能是 API。但是有些库,比如过程宏这种,它不是简单的 API 测试能覆盖的。所以就有了这个库。

这个库设计得特别适合过程宏的测试。看一下它的效果。

【Rust日报】 2019-05-07:Await 语法预告

【Rust日报】 2019-05-07:Await 语法预告

【Rust日报】 2019-05-07:Await 语法预告

强烈推荐。

Repo

test-exec - 用于测试命令行工具的库

作者也是写命令行工具的时候,觉得测试很不舒服,于是写了这个方便测试的工具。很不错。

比如:

let output = exec!{
   "my_bin",
   args: ["-p", "/"],
   cwd: "/tmp",
   env: {
       THREADS: "4"
   },
   stdin: b"show-hidden",
   timeout: 60000,
   log: true,

   code: 0,
   stdout: b"Started program... Done.",
   stderr: []
};

// output can be used here like a normal process::Output

Repo

dystopia - 匿名防追踪的网络代理

用了Tor技术,其貌似是要提供一种匿名服务。比如要访问google.com

curl https://google.com -x 54.95.171.65:2888 -L

项目还在早期阶段,值得关注。


上一篇:leetcode的每日一题(1)


下一篇:结构体初始化方法