Delete

Trait Delete 

Source
pub trait Delete {
    // Required method
    fn delete(&mut self, entity: EntityId) -> bool;
}
Expand description

Deletes components from an entity.

Required Methods§

Source

fn delete(&mut self, entity: EntityId) -> bool

Deletes component in entity, return true if the entity had this component.
Multiple components can be deleted at the same time using a tuple.

§Example
use shipyard::{Component, Delete, ViewMut, World};

#[derive(Component, Debug, PartialEq, Eq)]
struct U32(u32);

#[derive(Component, Debug, PartialEq, Eq)]
struct USIZE(usize);

let mut world = World::new();

let entity = world.add_entity((USIZE(0), U32(1)));

let (mut usizes, mut u32s) = world.borrow::<(ViewMut<USIZE>, ViewMut<U32>)>().unwrap();

assert!((&mut usizes, &mut u32s).delete(entity));

Implementations on Foreign Types§

Source§

impl Delete for ()

Source§

fn delete(&mut self, _: EntityId) -> bool

Source§

impl<ViewA: Delete> Delete for (ViewA,)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete> Delete for (ViewA, ViewB)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete> Delete for (ViewA, ViewB, ViewC)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete> Delete for (ViewA, ViewB, ViewC, ViewD)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete, ViewBB: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA, ViewBB)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete, ViewBB: Delete, ViewCC: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA, ViewBB, ViewCC)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete, ViewBB: Delete, ViewCC: Delete, ViewDD: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA, ViewBB, ViewCC, ViewDD)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete, ViewBB: Delete, ViewCC: Delete, ViewDD: Delete, ViewEE: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA, ViewBB, ViewCC, ViewDD, ViewEE)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Source§

impl<ViewA: Delete, ViewB: Delete, ViewC: Delete, ViewD: Delete, ViewE: Delete, ViewF: Delete, ViewG: Delete, ViewH: Delete, ViewI: Delete, ViewJ: Delete, ViewK: Delete, ViewL: Delete, ViewM: Delete, ViewN: Delete, ViewO: Delete, ViewP: Delete, ViewQ: Delete, ViewR: Delete, ViewS: Delete, ViewT: Delete, ViewU: Delete, ViewV: Delete, ViewW: Delete, ViewX: Delete, ViewY: Delete, ViewZ: Delete, ViewAA: Delete, ViewBB: Delete, ViewCC: Delete, ViewDD: Delete, ViewEE: Delete, ViewFF: Delete> Delete for (ViewA, ViewB, ViewC, ViewD, ViewE, ViewF, ViewG, ViewH, ViewI, ViewJ, ViewK, ViewL, ViewM, ViewN, ViewO, ViewP, ViewQ, ViewR, ViewS, ViewT, ViewU, ViewV, ViewW, ViewX, ViewY, ViewZ, ViewAA, ViewBB, ViewCC, ViewDD, ViewEE, ViewFF)

Source§

fn delete(&mut self, entity: EntityId) -> bool

Implementors§

Source§

impl<T: Component, TRACK> Delete for &mut ViewMut<'_, T, TRACK>

Source§

impl<T: Component, TRACK> Delete for ViewMut<'_, T, TRACK>