[−][src]Struct bevy_ecs::Archetype
A collection of entities having the same component types
Accessing Archetype
s is only required for complex dynamic scheduling. To manipulate entities,
go through the World
.
Implementations
impl Archetype
[src]
pub fn new(types: Vec<TypeInfo>) -> Archetype
[src]
pub fn with_grow(types: Vec<TypeInfo>, grow_size: usize) -> Archetype
[src]
pub fn has<T>(&self) -> bool where
T: Component,
[src]
T: Component,
pub fn has_type(&self, ty: TypeId) -> bool
[src]
pub fn get<T>(&self) -> Option<NonNull<T>> where
T: Component,
[src]
T: Component,
pub fn get_with_type_state<T>(&self) -> Option<(NonNull<T>, &TypeState)> where
T: Component,
[src]
T: Component,
pub fn get_type_state(&self, ty: TypeId) -> Option<&TypeState>
[src]
pub fn get_type_state_mut(&mut self, ty: TypeId) -> Option<&mut TypeState>
[src]
pub fn borrow<T>(&self) where
T: Component,
[src]
T: Component,
pub fn borrow_mut<T>(&self) where
T: Component,
[src]
T: Component,
pub fn release<T>(&self) where
T: Component,
[src]
T: Component,
pub fn release_mut<T>(&self) where
T: Component,
[src]
T: Component,
pub fn len(&self) -> usize
[src]
pub fn is_empty(&self) -> bool
[src]
pub fn iter_entities(&self) -> impl Iterator<Item = &Entity>
[src]
pub fn types(&self) -> &[TypeInfo]
[src]
pub unsafe fn allocate(&mut self, id: Entity) -> usize
[src]
Safety
Every type must be written immediately after this call
pub fn clear_trackers(&mut self)
[src]
pub unsafe fn put_dynamic(
&mut self,
component: *mut u8,
ty: TypeId,
size: usize,
index: usize,
added: bool
)
[src]
&mut self,
component: *mut u8,
ty: TypeId,
size: usize,
index: usize,
added: bool
)
Safety
component
must point to valid memory- the component
ty
pe must be registered index
must be in-boundsize
must be the size of the component- the storage array must be big enough
pub fn access<Q>(&self) -> Option<Access> where
Q: Query,
[src]
Q: Query,
How, if at all, Q
will access entities in this archetype
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Archetype
impl !Send for Archetype
impl !Sync for Archetype
impl Unpin for Archetype
impl UnwindSafe for Archetype
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,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Component for T where
T: 'static + Send + Sync,
[src]
T: 'static + Send + Sync,
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
fn into_any(self: Box<T>) -> Box<dyn Any + 'static>
[src]
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
fn as_any(&self) -> &(dyn Any + 'static)
[src]
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, 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.
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.
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>,