Skip to main content

rw_types/write/
ext.rs

1use std::io;
2
3use crate::{Endian, write::Writable};
4
5/// An extension to the [`io::Write`] trait.
6pub trait WriteExt: io::Write {
7    /// Writes `W` with the specified endian.
8    fn write_type<W: Writable>(&mut self, value: &W, endian: Endian) -> io::Result<()>;
9}
10
11impl<T: io::Write> WriteExt for T {
12    #[inline]
13    fn write_type<W: Writable>(&mut self, value: &W, endian: Endian) -> io::Result<()> {
14        value.write(self, endian)
15    }
16}