File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -268,6 +268,11 @@ pub struct CompleteLoadedAsset<A: Asset> {
268268}
269269
270270impl < A : Asset > CompleteLoadedAsset < A > {
271+ /// Take ownership of the stored [`Asset`] value.
272+ pub fn take ( self ) -> A {
273+ self . asset . value
274+ }
275+
271276 /// Returns the stored asset.
272277 pub fn get_asset ( & self ) -> & LoadedAsset < A > {
273278 & self . asset
@@ -299,6 +304,12 @@ pub struct CompleteErasedLoadedAsset {
299304}
300305
301306impl CompleteErasedLoadedAsset {
307+ /// Cast (and take ownership) of the [`Asset`] value of the given type. This will return
308+ /// [`Some`] if the stored type matches `A` and [`None`] if it does not.
309+ pub fn take < A : Asset > ( self ) -> Option < A > {
310+ self . asset . take ( )
311+ }
312+
302313 /// Returns the stored asset.
303314 pub fn get_asset ( & self ) -> & ErasedLoadedAsset {
304315 & self . asset
You can’t perform that action at this time.
0 commit comments