lilliput_core/encoder/
unit.rs1use crate::{error::Result, header::UnitHeader, io::Write, value::UnitValue};
2
3use super::Encoder;
4
5impl<W> Encoder<W>
6where
7 W: Write,
8{
9 #[inline]
13 pub fn encode_unit(&mut self) -> Result<()> {
14 let header = self.header_for_unit();
15 self.encode_unit_header(&header)
16 }
17
18 #[inline]
20 pub fn encode_unit_value(&mut self, value: &UnitValue) -> Result<()> {
21 let _ = value;
22 self.encode_unit()
23 }
24
25 #[inline]
29 pub fn encode_unit_header(&mut self, header: &UnitHeader) -> Result<()> {
30 let _ = header;
31
32 let byte = UnitHeader::TYPE_BITS;
33
34 #[cfg(feature = "tracing")]
35 tracing::debug!(byte = crate::binary::fmt_byte(byte));
36
37 self.push_byte(byte)
38 }
39
40 pub fn header_for_unit(&self) -> UnitHeader {
42 UnitHeader
43 }
44}