1 个不稳定版本
0.1.0 | 2023 年 7 月 21 日 |
---|
#2886 在 Rust 模式 中
16KB
117 行
size-trait
此crate提供了限制类型参数大小的特质。
示例
零大小类型
#![feature(generic_const_exprs)]
use size_trait::ZeroSize;
// This struct can only contain `T` when `T` has a size of 0.
struct Zst<T: ZeroSize<true>>(T);
let _ = Zst([0u8; 0]);
let _ = Zst(());
固定大小类型
#![feature(generic_const_exprs)]
use size_trait::Size;
// This struct can only contain `T` when `T` has a size of 4 bytes.
struct Fixed4Bytes<T: Size<4>>(T);
let _ = Fixed4Bytes([0u8; 4]);
let _ = Fixed4Bytes(0u32);
警告
此crate依赖于不稳定特性 generic_const_exprs
。此特性仅在nightly Rust中可用。它也不保证将来会稳定。跟踪问题 #76560。
为了使此crate正常运行,您必须在您的crate中启用 generic_const_exprs
特性
#![feature(generic_const_exprs)]
作者
- Jacob Lindahl @sudo_build geeklaunch.io