Skip to main content

SavedAssetBuilder

Struct SavedAssetBuilder 

Source
pub struct SavedAssetBuilder<'a> { /* private fields */ }
Expand description

A builder for creating SavedAsset instances (for use with asset saving).

This is commonly used in tandem with save_using_saver.

Implementations§

Source§

impl<'a> SavedAssetBuilder<'a>

Source

pub fn new(asset_server: AssetServer, asset_path: AssetPath<'static>) -> Self

Creates a new builder for the given asset_path and using the asset_server to back its handles.

Source

pub fn add_labeled_asset_with_new_handle<'b: 'a, A: Asset>( &mut self, label: impl Into<CowArc<'b, str>>, asset: SavedAsset<'a, 'a, A>, ) -> Handle<A>

Adds a labeled asset, creates a handle for it, and returns the handle (for use in creating an asset).

This is primarily used when constructing a new asset to be saved. Since assets commonly store handles to their subassets, this function returns a handle that can be stored in your root asset.

If you already have a root asset instance (which already contains a subasset handle), use Self::add_labeled_asset_with_existing_handle instead.

Source

pub fn add_labeled_asset_with_existing_handle<'b: 'a, A: Asset>( &mut self, label: impl Into<CowArc<'b, str>>, asset: SavedAsset<'a, 'a, A>, handle: Handle<A>, )

Adds a labeled asset with a pre-existing handle.

This is primarily used when attempting to save a (root) asset that you already have an instance of. Since this root asset instance already must have its fields populated (including any subasset handles), this function allows you to record the subasset that should be associated with that handle.

If you do not have a root asset instance (you’re creating one from scratch), use Self::add_labeled_asset_with_new_handle instead.

Source

pub fn add_labeled_asset_with_new_handle_erased<'b: 'a>( &mut self, label: impl Into<CowArc<'b, str>>, asset: ErasedSavedAsset<'a, 'a>, ) -> UntypedHandle

Same as Self::add_labeled_asset_with_new_handle, but type-erased to allow for dynamic types.

Source

pub fn add_labeled_asset_with_existing_handle_erased<'b: 'a>( &mut self, label: impl Into<CowArc<'b, str>>, asset: ErasedSavedAsset<'a, 'a>, handle: UntypedHandle, )

Same as Self::add_labeled_asset_with_existing_handle, but type-erased to allow for dynamic types.

Source

pub fn build<'b, A: Asset>(self, asset: &'b A) -> SavedAsset<'b, 'b, A>
where 'a: 'b,

Creates the final saved asset from this builder.

Auto Trait Implementations§

§

impl<'a> !RefUnwindSafe for SavedAssetBuilder<'a>

§

impl<'a> !UnwindSafe for SavedAssetBuilder<'a>

§

impl<'a> Freeze for SavedAssetBuilder<'a>

§

impl<'a> Send for SavedAssetBuilder<'a>

§

impl<'a> Sync for SavedAssetBuilder<'a>

§

impl<'a> Unpin for SavedAssetBuilder<'a>

§

impl<'a> UnsafeUnpin for SavedAssetBuilder<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> ConditionalSend for T
where T: Send,

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Converts Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.
Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Converts Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
Source§

fn as_any(&self) -> &(dyn Any + 'static)

Converts &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)

Converts &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSend for T
where T: Any + Send,

Source§

fn into_any_send(self: Box<T>) -> Box<dyn Any + Send>

Converts Box<Trait> (where Trait: DowncastSend) to Box<dyn Any + Send>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoResult<T> for T

Source§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
Source§

impl<A> Is for A
where A: Any,

Source§

fn is<T>() -> bool
where T: Any,

Checks if the current type “is” another type, using a TypeId equality comparison. This is most useful in the context of generic logic. Read more
Source§

impl<T> Settings for T
where T: 'static + Send + Sync,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more