38个版本 (破坏性更新)

0.31.0 2024年7月16日
0.29.0 2024年4月11日
0.28.1 2023年11月24日
0.27.3 2023年6月15日
0.3.0 2016年7月27日

#10 in 解析器实现

Download history 1398123/week @ 2024-05-04 1465223/week @ 2024-05-11 1462844/week @ 2024-05-18 1505891/week @ 2024-05-25 1686721/week @ 2024-06-01 1611714/week @ 2024-06-08 1598808/week @ 2024-06-15 1655669/week @ 2024-06-22 1551447/week @ 2024-06-29 1685686/week @ 2024-07-06 1709206/week @ 2024-07-13 1756942/week @ 2024-07-20 1725861/week @ 2024-07-27 1683474/week @ 2024-08-03 1761202/week @ 2024-08-10 1492064/week @ 2024-08-17

6,955,669 每月下载量
用于 32,759 个crate(85个直接使用)

MIT/Apache

1.5MB
37K SLoC

gimli

Build Status Coverage Status

gimli 是一个用于读写 DWARF调试格式 的库。

  • 零拷贝:所有内容只是对原始输入缓冲区的引用。不会制作输入数据的副本。

  • 惰性:您可以在不解析其内容的情况下迭代编译单元。只解析您迭代的调试信息条目(DIE)树。 gimli 还使用 DW_AT_sibling 引用来避免解析DIE的子项以找到其下一个兄弟项,如果可能的话。

  • 跨平台: gimli 对您正在处理的对象文件类型不做任何假设。另一方面,您需要自己提供Linux上的ELF加载器或macOS上的Mach-O加载器。

    • 不确定要使用哪个对象文件解析器?尝试跨平台的 object crate。查看 gimli-examples crate以了解与 gimli 的使用。

安装

将此添加到您的 Cargo.toml

[dependencies]
gimli = "0.31.0"

最低支持的Rust版本是

  • 1.60.0,用于 read 功能及其依赖项。
  • 1.65.0,用于其他功能。

文档

许可证

许可方式如下:

任选其一。

贡献

有关黑客攻击,请参阅 CONTRIBUTING.md

除非您明确说明,否则根据 Apache-2.0 许可证定义,您有意提交以包含在作品中的任何贡献,将按上述方式双重许可,不附加任何额外的条款或条件。

依赖关系