4个版本 (2个重大更改)
0.2.0 | 2021年7月7日 |
---|---|
0.1.0 | 2021年6月4日 |
0.0.2 | 2021年5月11日 |
0.0.1 | 2021年5月6日 |
#2292 in 数据结构
17KB
271 行
概述
此crate允许在提供的缓冲区中保存DST对象。它允许用户在no_std
环境中创建全局动态对象,而无需全局分配器。
use static_box::Box;
struct Uart1Rx {
// Implementation details...
}
impl SerialWrite for Uart1Rx {
fn write(&mut self, _byte: u8) {
// Implementation details
}
}
let rx = Uart1Rx { /* ... */ };
let mut buf = [0; 32];
let mut writer = Box::<dyn SerialWrite>::new(&mut buf, rx);
writer.write_str("Hello world!");
此实现受到rustc
测试仓库中thin_box
示例的启发。
最小支持的rustc
版本
此crate使用以下不稳定特性
换句话说,crate支持的nightly
rustc
版本是1.53.0
,但无法保证此代码在新版本上运行良好。
许可证
双许可以与Rust项目兼容。
根据您的选择,许可协议为Apache License,版本2.0 http://www.apache.org/licenses/LICENSE-2.0 或MIT许可 http://opensource.org/licenses/MIT。此文件不得根据这些条款复制、修改或分发。