10个版本
0.2.0 | 2024年7月12日 |
---|---|
0.1.8 | 2024年7月12日 |
0.1.5 | 2024年5月6日 |
#95 in 无标准库
348 每月下载量
26KB
485 行
array-section
当你在const上下文中需要返回一个未知大小的缓冲区(但小于某个限制)时。这个crate定义了一个由数组支持的类型,其中只能查看数组的一部分。
这可以在希望返回大小为N
的数组的const函数中很有用,但其中一些元素可能未使用。
#![no_std]
兼容
/// Returns an array of the square numbers smaller than both x and N.
const fn squares_smaller_than<const N: usize>(x: usize) -> ArraySection<usize, N> {
let mut i = 0;
let mut ans = [0; N];
while i * i < N && i * i < x {
ans[i] = i * i;
i += 1;
}
ArraySection::new(ans, 0..i)
}
assert_eq!(squares_smaller_than::<10>(16), [0, 1, 4, 9]);
功能标志
std
:从标准库派生Error
特质用于错误类型。启用alloc
。
alloc
:使数组部分可以转换为Vec
和boxed切片。
许可证
根据以下其中之一授权
- Apache License,版本2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交的任何贡献,包括在本作品中,都将如上所述双授权,不附加任何其他条款或条件。