Struct legion::storage::ArchetypeWriter [−][src]
Provides access to writers for writing new entities into an archetype in a world.
Users must claim all components contained in the archetype and write an equal number of components to each as the number of entities pushed to the writer.
Implementations
impl<'a> ArchetypeWriter<'a>
[src]
pub fn new(
arch_index: ArchetypeIndex,
archetype: &'a mut Archetype,
components: MultiMut<'a>
) -> Self
[src]
arch_index: ArchetypeIndex,
archetype: &'a mut Archetype,
components: MultiMut<'a>
) -> Self
Constructs a new archetype writer.
pub fn archetype(&self) -> &Archetype
[src]
Returns the archetype being written to.
pub fn claim_components<T: Component>(&mut self) -> ComponentWriter<'a, T>
[src]
Claims a component storage for a given component.
Panics
Panics if the storage for the requested component type has already been claimed or does not exist in the archetype.
pub fn claim_components_unknown(
&mut self,
type_id: ComponentTypeId
) -> UnknownComponentWriter<'a>
[src]
&mut self,
type_id: ComponentTypeId
) -> UnknownComponentWriter<'a>
Claims a component storage for a given component.
Panics
Panics if the storage for the requested component type has already been claimed or does not exist in the archetype.
pub fn push(&mut self, entity: Entity)
[src]
Pushes an entity ID into the archetype.
pub fn reserve(&mut self, additional: usize)
[src]
Reserves capacity for at least additional
extra entity IDs in the archetype.
pub fn inserted(&self) -> (ComponentIndex, &[Entity])
[src]
Returns a slice of entities inserted by this writer, and the component index of the first inserted entity.
Trait Implementations
impl<'a> Drop for ArchetypeWriter<'a>
[src]
Auto Trait Implementations
impl<'a> !RefUnwindSafe for ArchetypeWriter<'a>
impl<'a> Send for ArchetypeWriter<'a>
impl<'a> Sync for ArchetypeWriter<'a>
impl<'a> Unpin for ArchetypeWriter<'a>
impl<'a> !UnwindSafe for ArchetypeWriter<'a>
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> DowncastSync for T where
T: Send + Sync + Any,
[src]
T: Send + Sync + Any,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
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>,