Struct bevy_ecs::storage::BlobVec [−][src]
Implementations
impl BlobVec
[src]
pub fn new(
item_layout: Layout,
drop: unsafe fn(_: *mut u8),
capacity: usize
) -> BlobVec
[src]
item_layout: Layout,
drop: unsafe fn(_: *mut u8),
capacity: usize
) -> BlobVec
pub fn len(&self) -> usize
[src]
pub fn is_empty(&self) -> bool
[src]
pub fn capacity(&self) -> usize
[src]
pub fn reserve(&mut self, amount: usize)
[src]
pub unsafe fn set_unchecked(&self, index: usize, value: *mut u8)
[src]
Safety
index
must be in bounds
Allows aliased mutable access to index
’s data. Caller must ensure this does not happen
pub unsafe fn push_uninit(&mut self) -> usize
[src]
increases the length by one (and grows the vec if needed) with uninitialized memory and returns the index
Safety
the newly allocated space must be immediately populated with a valid value
pub unsafe fn set_len(&mut self, len: usize)
[src]
Safety
len must be <= capacity. if length is decreased, “out of bounds” items must be dropped. Newly added items must be immediately populated with valid values and length must be increased. For better unwind safety, call BlobVec::set_len after populating a new value.
pub unsafe fn swap_remove_and_forget_unchecked(
&mut self,
index: usize
) -> *mut u8
[src]
&mut self,
index: usize
) -> *mut u8
Performs a “swap remove” at the given index
, which removes the item at index
and moves
the last item in the BlobVec to index
(if index
is not the last item). It is the
caller’s responsibility to drop the returned pointer, if that is desirable.
Safety
It is the caller’s responsibility to ensure that index
is < self.len()
Callers should only access the returned pointer immediately after calling this function.
pub unsafe fn swap_remove_and_drop_unchecked(&mut self, index: usize)
[src]
Safety
index must be in-bounds
pub unsafe fn get_unchecked(&self, index: usize) -> *mut u8
[src]
Safety
It is the caller’s responsibility to ensure that index
is < self.len()
pub unsafe fn get_ptr(&self) -> NonNull<u8>
[src]
pub fn clear(&mut self)
[src]
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for BlobVec
impl !Send for BlobVec
impl !Sync for BlobVec
impl Unpin for BlobVec
impl UnwindSafe for BlobVec
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,