1use alloc::boxed::Box;
16use alloc::ffi::CString;
17use core::ffi::CStr;
18
19use crate::DeserializeShape;
20use crate::DeserializeShapeContext;
21use crate::SerializeShape;
22use crate::SerializeShapeContext;
23use crate::ShapeRef;
24
25impl SerializeShape for CStr {
26 fn serialize_shape_in(_context: &mut SerializeShapeContext) -> ShapeRef {
27 ShapeRef::Bytes
28 }
29}
30
31impl SerializeShape for CString {
32 fn serialize_shape_in(_context: &mut SerializeShapeContext) -> ShapeRef {
33 ShapeRef::Bytes
34 }
35}
36
37impl DeserializeShape for CString {
38 fn deserialize_shape_in(_context: &mut DeserializeShapeContext) -> ShapeRef {
39 ShapeRef::Bytes
40 }
41}
42
43impl DeserializeShape for Box<CStr> {
44 fn deserialize_shape_in(_context: &mut DeserializeShapeContext) -> ShapeRef {
45 ShapeRef::Bytes
46 }
47}