2 个稳定版本
1.0.1 | 2023年7月31日 |
---|---|
1.0.0 | 2022年10月3日 |
2452 在 Rust 模式
1,938 每月下载次数
在 4 crates 中使用
3KB
断言用于创建泛型特质约束
#![allow(incomplete_features)]
#![feature(generic_const_exprs)]
use const_assert::{Assert, IsTrue, IsFalse};
struct Buffer<const N: usize> {
inner: [usize; N],
}
impl<const N: usize> Buffer<N>
where
Assert<{ N == N.next_power_of_two() }>: IsTrue,
Assert<{ N == 1 }>: IsFalse
{
pub const fn new() -> Self {
Buffer { inner: [0; N] }
}
}
static BUFFER: Buffer<1024> = Buffer::new();
lib.rs
:
断言用于创建泛型特质约束
#![allow(incomplete_features)]
#![feature(generic_const_exprs)]
use const_assert::{Assert, IsTrue, IsFalse};
struct Buffer<const N: usize> {
inner: [usize; N],
}
impl<const N: usize> Buffer<N>
where
Assert<{ N == N.next_power_of_two() }>: IsTrue,
Assert<{ N == 1 }>: IsFalse
{
pub const fn new() -> Self {
Buffer { inner: [0; N] }
}
}
static BUFFER: Buffer<1024> = Buffer::new();