【Rust日报】 2019-05-19
sloth - 纯rust写的3D光栅化工具
基于 crossterm 实现跨平台的终端输出。现在也可以输出成js,显示在web上。来看看效果。
更炫酷的一个效果:demo
Repo
cerebrallib - 使用Rust写的brainfuck语言的虚拟机库
练手项目
// 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
Rust 最开始的作者 Graydon Hoare 在一个讲座中叙述了编译器的历史
是给不列颠哥伦比亚大学(在加拿大)的学生开的讲座。
分别讲了 clang, swiftc, rustc, 和 gcc 等。文章有意思。
Slide 在这里。
Repo
Pushrod 0.2.11 发布
Pushrod 是基于 piston_windows 的一个GUI库。这次发布增加了图片按钮等。看一下效果图
Repo
【嵌入式】为ESP32构建Rust开发环境
文章在这里,不复杂。
diesel-factories - 为测试要构建 factory_bot 的库
在单元测试/集成测试中,你经常会需要插入一些数据到数据库中。而 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
如何使用纯Rust实现命令行自动补全
命令行自动补全可深可浅,深的可以对子命令,参数项等,都自动补全。文章可以借鉴。
Read More
memory-profiler - Nokia 用 Rust 写了一个 Linux 内存调优工具
内存调优工具,主要用来分析内存泄漏什么的。当然,还有很多其它更详细的特性。我们来先睹为快。
Repo
From 日报小组 @Mike
日报订阅地址:
独立日报订阅地址:
Telgram Channel 阿里云语雀订阅 Steemit GitHub社区学习交流平台订阅:
Rust.cc论坛: 支持rss Rust Force: 支持rss 微信公众号:Rust语言学习交流文章来源:
Author:Rust.cc
link:https://rust.cc/article?id=38ff9dd0-59c5-467e-b5b4-8563e58f8869