planus/impls/
unit.rs

1use crate::{
2    builder::Builder,
3    traits::{Primitive, WriteAsOptional, WriteAsOptionalUnion, WriteAsPrimitive},
4    Cursor, UnionOffset, Void,
5};
6
7impl<P: Primitive> WriteAsPrimitive<P> for Void {
8    #[inline]
9    fn write<const N: usize>(&self, _cursor: Cursor<'_, N>, _buffer_position: u32) {
10        match *self {}
11    }
12}
13
14impl<P: Primitive> WriteAsOptional<P> for () {
15    type Prepared = Void;
16    #[inline]
17    fn prepare(&self, _builder: &mut Builder) -> Option<Void> {
18        None
19    }
20}
21
22impl<T: ?Sized> WriteAsOptionalUnion<T> for () {
23    #[inline]
24    fn prepare(&self, _builder: &mut Builder) -> Option<UnionOffset<T>> {
25        None
26    }
27}