基于 crossterm 实现跨平台的终端输出。现在也可以输出成js,显示在web上。来看看效果。下图是可以转的。公众号里面图片大小有限制,发不上来,请看下面 demo 和 repo.
更炫酷的一个效果:demo
Repo
练手项目
// src/main.rs code
use cerebrallib::cerebral;
use std::io
fn main() {
let code = String::from("++++");
let mut vm = cerebral::CerebralVM::new(code, io::stdin(), io::stdout());
vm.execute();
}
Repo
是给不列颠哥伦比亚大学(在加拿大)的学生开的讲座。
分别讲了 clang, swiftc, rustc, 和 gcc 等。文章有意思。
Slide 在这里。
Repo
Pushrod 是基于 piston_windows 的一个GUI库。这次发布增加了图片按钮等。看一下效果图
Repo
文章在这里,不复杂。
在单元测试/集成测试中,你经常会需要插入一些数据到数据库中。而 factory_bot 就是这样一种库,diesel-factories 是它基于 diesel 的实现。
这个库像下面一样使用。
// A normal Diesel model
#[derive(Clone, Queryable)]
struct Country {
pub id: i32,
pub name: String,
}
// Our factory
#[derive(Clone, Factory)]
#[factory(model = "Country", table = "crate::schema::countries")]
struct CountryFactory {
pub name: String,
}
// Setting up what the default values are
impl Default for CountryFactory {
fn default() -> Self {
Self {
name: "Denmark".into(),
}
}
}
#[test]
fn some_test() {
let con = establish_connection();
// Using all the defaults
let denmark = CountryFactory::default().insert(&con);
assert_eq!("Denmark", denmark.name);
// Defaults can be changed through builder methods
let netherlands = CountryFactory::default()
.name("Netherlands")
.insert(&con);
assert_eq!("Netherlands", netherlands.name);
}
Repo
Rust 安全代码工作组
cargo-repro
cargo-sandbox
命令行自动补全可深可浅,深的可以对子命令,参数项等,都自动补全。文章可以借鉴。
Read More
内存调优工具,主要用来分析内存泄漏什么的。当然,还有很多其它更详细的特性。我们来先睹为快。