pub struct ArtifactStorageSet { /* private fields */ }
Implementations§
source§impl ArtifactStorageSet
impl ArtifactStorageSet
pub fn new(refop_sender: Sender<RefOp>) -> Self
pub fn add_storage<T>(&self)
pub fn add_storage_with_loader<ArtifactDataT, ArtifactT, LoaderT>(
&self,
loader: Box<LoaderT>
)where
ArtifactDataT: TypeUuid + for<'a> Deserialize<'a> + 'static,
ArtifactT: TypeUuid + 'static + Send,
LoaderT: DynArtifactLoader<ArtifactT> + 'static,
pub fn artifact_to_data_type_uuid<ArtifactT>(&self) -> Option<ArtifactTypeId>
Trait Implementations§
source§impl ArtifactStorage for ArtifactStorageSet
impl ArtifactStorage for ArtifactStorageSet
source§fn load_artifact(
&mut self,
loader_info: &dyn LoaderInfoProvider,
artifact_type_id: &ArtifactTypeId,
artifact_id: ArtifactId,
data: Vec<u8>,
load_handle: LoadHandle,
load_op: ArtifactLoadOp
) -> Result<(), Box<dyn Error + Send + 'static>>
fn load_artifact( &mut self, loader_info: &dyn LoaderInfoProvider, artifact_type_id: &ArtifactTypeId, artifact_id: ArtifactId, data: Vec<u8>, load_handle: LoadHandle, load_op: ArtifactLoadOp ) -> Result<(), Box<dyn Error + Send + 'static>>
Updates the backing data of an artifact. Read more
source§fn commit_artifact(
&mut self,
artifact_data_type_id: ArtifactTypeId,
load_handle: LoadHandle
)
fn commit_artifact( &mut self, artifact_data_type_id: ArtifactTypeId, load_handle: LoadHandle )
Commits the specified artifact as loaded and ready to use. Read more
source§fn free_artifact(
&mut self,
artifact_data_type_id: ArtifactTypeId,
load_handle: LoadHandle
)
fn free_artifact( &mut self, artifact_data_type_id: ArtifactTypeId, load_handle: LoadHandle )
Frees the artifact identified by the load handle. Read more
source§impl<A: TypeUuid + 'static + Send> TypedArtifactStorage<A> for ArtifactStorageSet
impl<A: TypeUuid + 'static + Send> TypedArtifactStorage<A> for ArtifactStorageSet
Auto Trait Implementations§
impl RefUnwindSafe for ArtifactStorageSet
impl Send for ArtifactStorageSet
impl Sync for ArtifactStorageSet
impl Unpin for ArtifactStorageSet
impl UnwindSafe for ArtifactStorageSet
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.