#integer #unaligned #misaligned #conversion

no-std core_ux

非标准类型u/i1..=63的no_std实现

1个不稳定版本

使用旧的Rust 2015

0.1.3 2020年12月22日

#769嵌入式开发

Apache-2.0/MIT

69KB
1K SLoC

core_UX,非标准整数类型no-std实现

原始包,链接此处,由于创建者决定不将其作为no-std包,因此存在此包 除了前3行,我没有从README中更改任何内容

非标准整数类型如u7u9u10u63i7i9

当应用程序需要非标准宽度的整数时,通常的做法是使用更大的容器,并确保在操作后值在范围内。uX旨在一次解决这个问题,通过

  • 提供与内置Rust类型尽可能相似的u1-u127i1-i127类型
    • 定义的类型的方法与内置类型的方法相同(目前并非所有都实现了,如果缺少对您来说重要的内容,请提交问题或创建PR)
    • 在调试中,溢出会引发panic,在发布中会回绕。
  • 可以通过使用From进行所有可能的无损转换。
  • TryFrom稳定后,也将支持可失败转换。

许可证

根据您的选择,许可如下

贡献

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

无运行时依赖