ArchiveWriter

Trait ArchiveWriter 

Source
pub trait ArchiveWriter: ArchiveTrait {
Show 16 methods // Required methods fn write_u8(&mut self, value: u8) -> Result<()>; fn write_i8(&mut self, value: i8) -> Result<()>; fn write_u16<T: ByteOrder>(&mut self, value: u16) -> Result<()>; fn write_i16<T: ByteOrder>(&mut self, value: i16) -> Result<()>; fn write_u32<T: ByteOrder>(&mut self, value: u32) -> Result<()>; fn write_i32<T: ByteOrder>(&mut self, value: i32) -> Result<()>; fn write_u64<T: ByteOrder>(&mut self, value: u64) -> Result<()>; fn write_i64<T: ByteOrder>(&mut self, value: i64) -> Result<()>; fn write_f32<T: ByteOrder>(&mut self, value: f32) -> Result<()>; fn write_f64<T: ByteOrder>(&mut self, value: f64) -> Result<()>; fn write_fstring(&mut self, value: Option<&str>) -> Result<usize, Error>; fn write_all(&mut self, buf: &[u8]) -> Result<()>; fn write_bool(&mut self, value: bool) -> Result<()>; // Provided methods fn write_property_guid(&mut self, guid: &Option<Guid>) -> Result<(), Error> { ... } fn write_fname(&mut self, fname: &FName) -> Result<(), Error> { ... } fn generate_unversioned_header( &mut self, properties: &[Property], parent_name: &FName, ) -> Result<Option<(UnversionedHeader, Vec<Property>)>, Error> { ... }
}
Expand description

A trait that allows for writing to an archive in an asset-specific way

Required Methods§

Source

fn write_u8(&mut self, value: u8) -> Result<()>

Write u8

Source

fn write_i8(&mut self, value: i8) -> Result<()>

Write i8

Source

fn write_u16<T: ByteOrder>(&mut self, value: u16) -> Result<()>

Write u16

Source

fn write_i16<T: ByteOrder>(&mut self, value: i16) -> Result<()>

Write i16

Source

fn write_u32<T: ByteOrder>(&mut self, value: u32) -> Result<()>

Write u32

Source

fn write_i32<T: ByteOrder>(&mut self, value: i32) -> Result<()>

Write i32

Source

fn write_u64<T: ByteOrder>(&mut self, value: u64) -> Result<()>

Write u64

Source

fn write_i64<T: ByteOrder>(&mut self, value: i64) -> Result<()>

Write i64

Source

fn write_f32<T: ByteOrder>(&mut self, value: f32) -> Result<()>

Write f32

Source

fn write_f64<T: ByteOrder>(&mut self, value: f64) -> Result<()>

Write f64

Source

fn write_fstring(&mut self, value: Option<&str>) -> Result<usize, Error>

Write an FString

Source

fn write_all(&mut self, buf: &[u8]) -> Result<()>

Write all of the bytes in the slice

Source

fn write_bool(&mut self, value: bool) -> Result<()>

Write bool

Provided Methods§

Source

fn write_property_guid(&mut self, guid: &Option<Guid>) -> Result<(), Error>

Write a Guid property

Source

fn write_fname(&mut self, fname: &FName) -> Result<(), Error>

Write an FName

Source

fn generate_unversioned_header( &mut self, properties: &[Property], parent_name: &FName, ) -> Result<Option<(UnversionedHeader, Vec<Property>)>, Error>

Generate an unversioned header for an unversioned package

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'cursor, W: Write + Seek> ArchiveWriter for RawWriter<'cursor, W>

Source§

impl<Writer, Passthrough> ArchiveWriter for Passthrough
where Writer: ArchiveWriter, Passthrough: PassthroughArchiveWriter<Passthrough = Writer>,