diff --git a/src/model/mod.rs b/src/model/mod.rs index df71301..eb87dd6 100644 --- a/src/model/mod.rs +++ b/src/model/mod.rs @@ -76,11 +76,11 @@ pub struct ReferenceBlockRange { pub end: u32, } -#[derive(Debug)] +#[derive(Debug, Default)] #[cfg(all(feature = "read", feature = "write"))] #[derive(binrw::BinRead, binrw::BinWrite)] pub struct ModelSectionInfo - where T: binrw::BinRead + binrw::BinWrite, + where T: Default + binrw::BinRead + binrw::BinWrite, ::Args: Default, { pub stack: T, @@ -90,11 +90,11 @@ pub struct ModelSectionInfo pub index_buffer: [T; 3], } -#[derive(Debug)] +#[derive(Debug, Default)] #[cfg(all(feature = "write", not(feature = "read")))] #[derive(binrw::BinWrite)] pub struct ModelSectionInfo - where T: binrw::BinWrite, + where T: Default + binrw::BinWrite, { pub stack: T, pub runtime: T, @@ -103,11 +103,11 @@ pub struct ModelSectionInfo pub index_buffer: [T; 3], } -#[derive(Debug)] +#[derive(Debug, Default)] #[cfg(all(feature = "read", not(feature = "write")))] #[derive(binrw::BinRead)] pub struct ModelSectionInfo - where T: binrw::BinRead, + where T: Default + binrw::BinRead, ::Args: Default, { pub stack: T, @@ -117,9 +117,9 @@ pub struct ModelSectionInfo pub index_buffer: [T; 3], } -#[derive(Debug)] +#[derive(Debug, Default)] #[cfg(not(any(feature = "read", feature = "write")))] -pub struct ModelSectionInfo { +pub struct ModelSectionInfo { pub stack: T, pub runtime: T, pub vertex_buffer: [T; 3], @@ -127,18 +127,6 @@ pub struct ModelSectionInfo { pub index_buffer: [T; 3], } -impl Default for ModelSectionInfo { - fn default() -> Self { - Self { - stack: T::default(), - runtime: T::default(), - vertex_buffer: [T::default(), T::default(), T::default()], - edge_geometry_vertex_buffer: [T::default(), T::default(), T::default()], - index_buffer: [T::default(), T::default(), T::default()], - } - } -} - #[derive(Debug, Default)] #[cfg_attr(feature = "read", derive(binrw::BinRead), br(little))] #[cfg_attr(feature = "write", derive(binrw::BinWrite), bw(little))]