【Rust日报】2022-01-10 使用 Nom 解析文本

使用 Nom 解析文本

本教程是关于 Nom 的,它是我最喜欢的Rust解析库。它使用解析器组合子方法:开始编写匹配单个数字或字符的小型解析器。这些将成为更大的解析器的构建块,用于匹配,比如日期或电话号码。通过将许多小型解析器组合在一起,您可以构建一个大型解析器,将文件或流解码为漂亮的Rust结构和枚举。在本教程中,我们将使用Nom解析输入文件到一个Advent of Code的谜题。

原文链接: https://blog.adamchalmers.com/nom-chars/

Bevy是如何使用 Rust traits 来添加标签的

出于好奇,作者最近开始关注Bevy的开发,Bevy是一个用Rust编写的游戏引擎。今天作者想谈谈Bevy如何使用Rust特性让用户非常方便地为元素添加标签。

注意: 这里的实现实际上是非常通用的, 您可以很容易地将其应用到任何其他Rust项目

原文链接: https://deterministic.space/bevy-labels.html

Serde Playground

这是一个 Serde Playground, 上面可以快速验证自己的序列化结果.

原文链接: https://hkalbasi.github.io/serde-rs.github.io/playground.html

Rexie: IndexedDB wrapper

Rexie 是一个易于使用的、基于特性的的 IndexedDB 包装器,可以编译成 webassembly。

github 地址: https://github.com/devashishdxt/rexie

cargo-xcodebuild: 编译和运行 iOS 的 apps.

让 cargo 编译和运行 iOS 的 apps.

例如, 只要很小的改动,就可以使用 xcodebuild 来运行 bevy/miniquad/wgpu/etc..

  1. Cargo.toml

[lib]
crate-type = ["staticlib"]

[package.metadata.ios]
build_targets = ["aarch64-apple-ios", "aarch64-apple-ios-sim", "x86_64-apple-ios"]
  1. lib.rs

#[no_mangle]
pub extern "C" fn main_rs() {
    // start game code here
}

运行步骤:

  • 启动一个模拟器

  • cargo xcodebuild run

--

From 日报小组 BobQin,FBI小白

社区学习交流平台订阅:

  • Rustcc论坛: 支持rss

  • 微信公众号:Rust语言中文社区

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值