4 个版本

0.1.3 2024年6月27日
0.1.2 2023年11月27日
0.1.1 2023年11月27日
0.1.0 2023年11月27日

#220构建工具

Download history • Rust 包仓库 351/week @ 2024-04-28 • Rust 包仓库 613/week @ 2024-05-05 • Rust 包仓库 640/week @ 2024-05-12 • Rust 包仓库 405/week @ 2024-05-19 • Rust 包仓库 794/week @ 2024-05-26 • Rust 包仓库 1024/week @ 2024-06-02 • Rust 包仓库 1027/week @ 2024-06-09 • Rust 包仓库 732/week @ 2024-06-16 • Rust 包仓库 1175/week @ 2024-06-23 • Rust 包仓库 670/week @ 2024-06-30 • Rust 包仓库 917/week @ 2024-07-07 • Rust 包仓库 739/week @ 2024-07-14 • Rust 包仓库 641/week @ 2024-07-21 • Rust 包仓库 1905/week @ 2024-07-28 • Rust 包仓库 1686/week @ 2024-08-04 • Rust 包仓库 1478/week @ 2024-08-11 • Rust 包仓库

每月 5,740 次下载
4 个 crate (2 直接) 中使用

Apache-2.0

28KB
800

无损解析器用于 Makefile

此 crate 提供了一个用于 makefile 的无损解析器,创建了一个可修改的 CST。

示例


let mf = Makefile::read("Makefile").unwrap();

println!("Rules in the makefile: {:?}", mf.rules().map(|r| r.targets().join(" ")).collect::<Vec<_>>());

lib.rs:

Makefile 的无损解析器

示例

use std::io::Read;
let contents = r#"PYTHON = python3

.PHONY: all

all: build

build:
	$(PYTHON) setup.py build
"#;
let makefile: makefile_lossless::Makefile = contents.parse().unwrap();

assert_eq!(makefile.rules().count(), 3);

依赖项

~1MB
~14K SLoC