dst_container/
unsized_str.rs1use crate::*;
2
3#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Hash, MaybeUninitProject, UnsizedClone)]
4#[repr(C)]
5pub struct UnsizedStr<H> {
7 pub header: H,
9 pub str: str,
11}
12
13#[cfg(test)]
14mod test {
15 use crate::*;
16
17 #[test]
18 fn new_box() {
19 let b = unsafe {
20 Box::<UnsizedStr<u32>>::new_unsized_with(5, |slice| {
21 slice.header.write(114514);
22 slice.str.write_copy_of_slice(b"Hello");
23 })
24 };
25
26 assert_eq!(b.header, 114514);
27 assert_eq!(&b.str, "Hello");
28 }
29}