1 个不稳定版本
0.1.0 | 2020年9月6日 |
---|
#174 in 无标准库
1,872 次每月下载
在 11 个crates中(7 直接)使用
6KB
Align Data
简单提高任何静态或include_bytes!
的对齐方式。
示例
当通过include_bytes!
包含原始数据时,通常直接将其解释为结构化数据,但并未根据结构化数据的对齐方式对包含的字节进行对齐。
这个crate修复了这个疏忽
use align_data::{include_aligned, Align4K};
static ALIGNED: &[u8] = include_aligned!(Align4K, "lib.rs");
assert_eq!(ALIGNED.as_ptr() as usize % 0x1000, 0);
任何常量表达式的值都可以被强制对齐到指定的对齐方式
use align_data::{aligned, Align16};
let five = aligned!(Align16, i32, 5);
assert_eq!(five as *const _ as usize % 0x10, 0);
许可证
根据MIT许可证许可,请参阅license.txt。
贡献
除非你明确声明,否则任何有意提交以包含在你提供的作品中的贡献,均应按照上述方式许可,不附加任何额外条款或条件。