Trait jomini::binary::BinaryFlavor
source · pub trait BinaryFlavor: Encoding {
// Required methods
fn visit_f32(&self, data: [u8; 4]) -> f32;
fn visit_f64(&self, data: [u8; 8]) -> f64;
// Provided methods
fn deserializer(&self) -> BinaryDeserializerBuilder<&Self>
where Self: Sized { ... }
fn deserialize_slice<'de, 'res: 'de, T, RES>(
&self,
data: &'de [u8],
resolver: &'res RES,
) -> Result<T, Error>
where T: Deserialize<'de>,
RES: TokenResolver,
Self: Sized { ... }
fn deserialize_reader<T, RES, R>(
&self,
reader: R,
resolver: &RES,
) -> Result<T, Error>
where T: DeserializeOwned,
RES: TokenResolver,
R: Read,
Self: Sized { ... }
}
Expand description
Trait customizing decoding values from binary data
How binary data is encoded differs between games and even between patches!
Required Methods§
Provided Methods§
sourcefn deserializer(&self) -> BinaryDeserializerBuilder<&Self>where
Self: Sized,
fn deserializer(&self) -> BinaryDeserializerBuilder<&Self>where
Self: Sized,
Create binary deserializer from this binary flavor
sourcefn deserialize_slice<'de, 'res: 'de, T, RES>(
&self,
data: &'de [u8],
resolver: &'res RES,
) -> Result<T, Error>
fn deserialize_slice<'de, 'res: 'de, T, RES>( &self, data: &'de [u8], resolver: &'res RES, ) -> Result<T, Error>
Deserialize value from slice of data with this binary flavor
sourcefn deserialize_reader<T, RES, R>(
&self,
reader: R,
resolver: &RES,
) -> Result<T, Error>
fn deserialize_reader<T, RES, R>( &self, reader: R, resolver: &RES, ) -> Result<T, Error>
Deserialize value from stream of data with this binary flavor