#parser-generator #im4p #im4m #im4r #iboot #img4 #no-alloc

不使用std image4

一个适用于纯Rust编写的Image4图像解析和生成的no_std友好型库

7个版本 (破坏性更新)

0.7.0 2023年7月7日
0.6.0 2023年6月15日
0.5.0 2023年5月31日
0.4.0 2023年5月23日
0.1.0 2023年5月9日

#1174 in 编码


用于 image4-util

MIT/Apache

145KB
3K SLoC

image4-rs

Crate Documentation

一个适用于纯Rust编写的Image4图像解析和生成的no_std友好型库。

此库目前正在积极开发中。API已基本完成,但还有一些重大变更预计即将到来。

功能

  • alloc:启用所有权的引用类型版本,在der中启用alloc支持以及Image4属性的解码。
  • std:在提供的错误上实现std::error::Error特质,使stddercrate中启用支持。
  • payload:添加对Image4有效载荷(IM4P文件)的支持,需要property功能。
  • manifest:添加对Image4清单(IM4M文件)的支持,需要property功能。
  • restore_info:添加对Image4恢复信息(IM4R blob)的支持。
  • image:添加对完整Image4图像的支持,需要payloadmanifestrestore_info功能。
  • serde:实现Image4属性列表的序列化和反序列化。对于将有效载荷属性和清单主体转换为其他格式以及反之亦然非常有用。默认禁用。
  • property:添加对Image4属性列表的支持(启用property模块)。这些是Image4格式的实现细节,通常不应直接使用。
  • signature:在manifest模块中启用与signaturecrate的集成,需要manifest功能。默认禁用。
  • x509-cert:启用与manifest模块中的x509-cert包的集成,需要manifestalloc功能。默认禁用。

最低支持的Rust版本

此包至少需要Rust 1.65。MSRV的更改将伴随小版本号的提升。

许可协议

根据您选择以下任一项进行许可:

任选其一。

贡献

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

依赖项

~0.6–1.4MB
~30K SLoC