pub trait ErasedAssetLoader:
Send
+ Sync
+ 'static {
// Required methods
fn load<'a>(
&'a self,
reader: &'a mut dyn Reader,
meta: Box<dyn AssetMetaDyn>,
load_context: LoadContext<'a>,
) -> BoxedFuture<'a, Result<ErasedLoadedAsset, Box<dyn Error + Send + Sync + 'static>>>;
fn extensions(&self) -> &[&str];
fn deserialize_meta(
&self,
meta: &[u8],
) -> Result<Box<dyn AssetMetaDyn>, DeserializeMetaError>;
fn default_meta(&self) -> Box<dyn AssetMetaDyn>;
fn type_name(&self) -> &'static str;
fn type_id(&self) -> TypeId;
fn asset_type_name(&self) -> &'static str;
fn asset_type_id(&self) -> TypeId;
}
Expand description
Provides type-erased access to an AssetLoader
.
Required Methods§
Sourcefn load<'a>(
&'a self,
reader: &'a mut dyn Reader,
meta: Box<dyn AssetMetaDyn>,
load_context: LoadContext<'a>,
) -> BoxedFuture<'a, Result<ErasedLoadedAsset, Box<dyn Error + Send + Sync + 'static>>>
fn load<'a>( &'a self, reader: &'a mut dyn Reader, meta: Box<dyn AssetMetaDyn>, load_context: LoadContext<'a>, ) -> BoxedFuture<'a, Result<ErasedLoadedAsset, Box<dyn Error + Send + Sync + 'static>>>
Asynchronously loads the asset(s) from the bytes provided by Reader
.
Sourcefn extensions(&self) -> &[&str]
fn extensions(&self) -> &[&str]
Returns a list of extensions supported by this asset loader, without the preceding dot.
Sourcefn deserialize_meta(
&self,
meta: &[u8],
) -> Result<Box<dyn AssetMetaDyn>, DeserializeMetaError>
fn deserialize_meta( &self, meta: &[u8], ) -> Result<Box<dyn AssetMetaDyn>, DeserializeMetaError>
Deserializes metadata from the input meta
bytes into the appropriate type (erased as Box<dyn AssetMetaDyn>
).
Sourcefn default_meta(&self) -> Box<dyn AssetMetaDyn>
fn default_meta(&self) -> Box<dyn AssetMetaDyn>
Returns the default meta value for the AssetLoader
(erased as Box<dyn AssetMetaDyn>
).
Sourcefn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
Returns the type name of the AssetLoader
.
Sourcefn type_id(&self) -> TypeId
fn type_id(&self) -> TypeId
Returns the TypeId
of the AssetLoader
.
Sourcefn asset_type_name(&self) -> &'static str
fn asset_type_name(&self) -> &'static str
Returns the type name of the top-level Asset
loaded by the AssetLoader
.
Sourcefn asset_type_id(&self) -> TypeId
fn asset_type_id(&self) -> TypeId
Returns the TypeId
of the top-level Asset
loaded by the AssetLoader
.