pub trait TraitResourceExt {
// Required methods
fn insert_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
resource: R,
) -> &mut Self
where (R,): TraitResourceMarker<Trait, Covered = R>;
fn init_resource_as<Trait: ?Sized + TraitResource, R: Resource + Default>(
&mut self,
) -> &mut Self
where (R,): TraitResourceMarker<Trait, Covered = R>;
fn register_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
) -> &mut Self
where (R,): TraitResourceMarker<Trait, Covered = R>;
fn get_resources_trait<Trait: ?Sized + TraitResource>(
&self,
) -> TraitResourceIterator<'_, Trait> ⓘ;
fn get_resources_trait_mut<Trait: ?Sized + TraitResource>(
&mut self,
) -> TraitResourceIteratorMut<'_, Trait> ⓘ;
fn unregister_resource_from_trait<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
)
where (R,): TraitResourceMarker<Trait, Covered = R>;
}
Required Methods§
Sourcefn insert_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
resource: R,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
fn insert_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
resource: R,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
Inserts a resource into the world and registers its trait. if the resource already exists, it will be overridden.
Sourcefn init_resource_as<Trait: ?Sized + TraitResource, R: Resource + Default>(
&mut self,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
fn init_resource_as<Trait: ?Sized + TraitResource, R: Resource + Default>(
&mut self,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
Initializes a resource into the world and registers its trait. if the resource already exists, it will be overridden.
Sourcefn register_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
fn register_resource_as<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
) -> &mut Selfwhere
(R,): TraitResourceMarker<Trait, Covered = R>,
Registers a resource as implementing a trait. If the resource is already registered nothing will happen.
§Panics
Panics if the resource does not exist.
Sourcefn get_resources_trait<Trait: ?Sized + TraitResource>(
&self,
) -> TraitResourceIterator<'_, Trait> ⓘ
fn get_resources_trait<Trait: ?Sized + TraitResource>( &self, ) -> TraitResourceIterator<'_, Trait> ⓘ
Sourcefn get_resources_trait_mut<Trait: ?Sized + TraitResource>(
&mut self,
) -> TraitResourceIteratorMut<'_, Trait> ⓘ
fn get_resources_trait_mut<Trait: ?Sized + TraitResource>( &mut self, ) -> TraitResourceIteratorMut<'_, Trait> ⓘ
Sourcefn unregister_resource_from_trait<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
)where
(R,): TraitResourceMarker<Trait, Covered = R>,
fn unregister_resource_from_trait<Trait: ?Sized + TraitResource, R: Resource>(
&mut self,
)where
(R,): TraitResourceMarker<Trait, Covered = R>,
Unregister a resource from trait.
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.