deferred_loader: remove PhantomData using GATs
This commit is contained in:
lib
@ -36,17 +36,17 @@ impl From<RobloxAssetIdParseErr> for TextureError{
|
||||
}
|
||||
}
|
||||
|
||||
pub struct TextureLoader<'a>(std::marker::PhantomData<&'a ()>);
|
||||
impl TextureLoader<'_>{
|
||||
pub struct TextureLoader;
|
||||
impl TextureLoader{
|
||||
pub fn new()->Self{
|
||||
Self(std::marker::PhantomData)
|
||||
Self
|
||||
}
|
||||
}
|
||||
impl<'a> Loader for TextureLoader<'a>{
|
||||
impl Loader for TextureLoader{
|
||||
type Error=TextureError;
|
||||
type Index=&'a str;
|
||||
type Index<'a>=&'a str;
|
||||
type Resource=Texture;
|
||||
fn load(&mut self,index:Self::Index)->Result<Self::Resource,Self::Error>{
|
||||
fn load<'a>(&mut self,index:Self::Index<'a>)->Result<Self::Resource,Self::Error>{
|
||||
let RobloxAssetId(asset_id)=index.parse()?;
|
||||
let file_name=format!("textures/{}.dds",asset_id);
|
||||
let data=read_entire_file(file_name)?;
|
||||
@ -138,17 +138,17 @@ impl MeshIndex<'_>{
|
||||
}
|
||||
}
|
||||
|
||||
pub struct MeshLoader<'a>(std::marker::PhantomData<&'a ()>);
|
||||
impl MeshLoader<'_>{
|
||||
pub struct MeshLoader;
|
||||
impl MeshLoader{
|
||||
pub fn new()->Self{
|
||||
Self(std::marker::PhantomData)
|
||||
Self
|
||||
}
|
||||
}
|
||||
impl<'a> Loader for MeshLoader<'a>{
|
||||
impl Loader for MeshLoader{
|
||||
type Error=MeshError;
|
||||
type Index=MeshIndex<'a>;
|
||||
type Index<'a>=MeshIndex<'a>;
|
||||
type Resource=Mesh;
|
||||
fn load(&mut self,index:Self::Index)->Result<Self::Resource,Self::Error>{
|
||||
fn load<'a>(&mut self,index:Self::Index<'a>)->Result<Self::Resource,Self::Error>{
|
||||
let mesh=match index.mesh_type{
|
||||
MeshType::FileMesh=>{
|
||||
let RobloxAssetId(asset_id)=index.content.parse()?;
|
||||
|
Reference in New Issue
Block a user