Struct ComponentResourceSet

Source
#[repr(align(64))]
pub struct ComponentResourceSet { /* private fields */ }
Expand description

Provides raw access to component data slices.

Implementations§

Source§

impl ComponentResourceSet

Source

pub fn version(&self) -> u64

Gets the version of the component slice.

Source

pub unsafe fn data_raw(&self) -> (Ref<'_, *mut u8>, usize, usize)

Gets a raw pointer to the start of the component slice.

Returns a tuple containing (pointer, element_size, count).

§Safety

Access to the component data within the slice is runtime borrow checked in debug builds. This call will panic if borrowing rules are broken in debug, and is undefined behavior in release.

Source

pub unsafe fn data_raw_mut(&self) -> (RefMut<'_, *mut u8>, usize, usize)

Gets a raw pointer to the start of the component slice.

Returns a tuple containing (pointer, element_size, count).

§Safety

Access to the component data within the slice is runtime borrow checked in debug builds. This call will panic if borrowing rules are broken in debug, and is undefined behavior in release.

§Panics

Will panic when an internal u64 counter overflows. It will happen in 50000 years if you do 10000 mutations a millisecond.

Source

pub unsafe fn data_slice<T>(&self) -> RefMap<'_, &[T]>

Gets a shared reference to the slice of components.

§Safety

Ensure that T is representative of the component data actually stored.

Access to the component data within the slice is runtime borrow checked. This call will panic if borrowing rules are broken.

Source

pub unsafe fn data_slice_mut<T>(&self) -> RefMapMut<'_, &mut [T]>

Gets a mutable reference to the slice of components.

§Safety

Ensure that T is representative of the component data actually stored.

Access to the component data within the slice is runtime borrow checked. This call will panic if borrowing rules are broken.

§Panics

Will panic when an internal u64 counter overflows. It will happen in 50000 years if you do 10000 mutations a millisecond.

Source

pub fn writer(&mut self) -> ComponentWriter<'_>

Creates a writer for pushing components into or removing from the vec.

Trait Implementations§

Source§

impl Debug for ComponentResourceSet

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
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> 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