From db14bdce8eac0d7d83109365cbeda389febfb788 Mon Sep 17 00:00:00 2001 From: Dylan Date: Sun, 21 Jun 2026 15:27:50 +1200 Subject: feat: Moved from and to bytes to a single trait Now called `ByteEncode` --- src/writer.rs | 30 ++++-------------------------- 1 file changed, 4 insertions(+), 26 deletions(-) (limited to 'src/writer.rs') diff --git a/src/writer.rs b/src/writer.rs index dc1ac85..47d400b 100644 --- a/src/writer.rs +++ b/src/writer.rs @@ -1,6 +1,8 @@ use std::io::Write; use std::{fs::File, io::BufWriter}; +use crate::byte_encode::ByteEncode; + pub struct FileWriter { buf_writer: BufWriter @@ -25,14 +27,14 @@ impl FileWriter // self.buf_writer.write_all(&[0u8; c]).expect("Could not write 0s"); } - pub fn write_array, const C: usize>(&mut self, xs: [T; C]) + pub fn write_array, const C: usize>(&mut self, xs: [T; C]) { for x in xs { self.write(x); } } - pub fn write>(&mut self, x: T) + pub fn write>(&mut self, x: T) { let data = x.to_le_bytes(); self.buf_writer.write_all(&data).expect("Could not write"); @@ -43,27 +45,3 @@ impl FileWriter self.buf_writer.flush().expect("Could not flush"); } } - -pub trait ToBytes: Sized + Copy -{ - fn to_le_bytes(&self) -> [u8; N]; -} - -impl ToBytes<4> for u32 -{ - fn to_le_bytes(&self) -> [u8; 4] { - u32::to_le_bytes(*self) - } -} -impl ToBytes<2> for u16 -{ - fn to_le_bytes(&self) -> [u8; 2] { - u16::to_le_bytes(*self) - } -} -impl ToBytes<1> for u8 -{ - fn to_le_bytes(&self) -> [u8; 1] { - u8::to_le_bytes(*self) - } -} -- cgit v1.3.1