[−][src]Trait assets_manager::Loader
Specifies how an asset is loaded.
With this trait, you can easily specify how you want your data to be loaded.
Basic usage
Most of the time, you don't need to implement this trait yourself, as there
are implementations for the most formats (using serde
). Don't forget to
enable the corresponding feature !
use serde::Deserialize; use assets_manager::{Asset, loader}; // The struct you want to load #[derive(Deserialize)] struct Point { x: i32, y: i32, } impl Asset for Point { const EXT: &'static str = "ron"; // Specify here how to convert raw data type Loader = loader::RonLoader; }
Required methods
fn load(content: Vec<u8>) -> Result<T, Box<dyn Error + Send + Sync>>
Loads an asset from its raw bytes representation.
Implementors
impl Loader<String> for StringLoader
[src]
impl<T> Loader<T> for BincodeLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for CborLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for CustomLoader
[src]
impl<T> Loader<T> for JsonLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for MessagePackLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for ParseLoader where
T: FromStr,
<T as FromStr>::Err: Error + Send + Sync + 'static,
[src]
T: FromStr,
<T as FromStr>::Err: Error + Send + Sync + 'static,
impl<T> Loader<T> for RonLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for TomlLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> Loader<T> for YamlLoader where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,