Trait specs::world::Builder

source ·
pub trait Builder {
    // Required methods
    fn with<C: Component + Send + Sync>(self, c: C) -> Self;
    fn build(self) -> Entity;

    // Provided method
    fn maybe_with<C: Component + Send + Sync>(self, c: Option<C>) -> Self
       where Self: Sized { ... }
}
Expand description

A common trait for EntityBuilder and LazyBuilder, allowing either to be used. Entity is definitely alive, but the components may or may not exist before a call to World::maintain.

Required Methods§

source

fn with<C: Component + Send + Sync>(self, c: C) -> Self

Appends a component and associates it with the entity.

If a component was already associated with the entity, it should overwrite the previous component.

Panics

Panics if the component hasn’t been register()ed in the World.

source

fn build(self) -> Entity

Finishes the building and returns the entity.

Provided Methods§

source

fn maybe_with<C: Component + Send + Sync>(self, c: Option<C>) -> Selfwhere Self: Sized,

Convenience method that calls self.with(component) if Some(component) is provided

Panics

Panics if the component hasn’t been register()ed in the World.

Implementors§

source§

impl<'a> Builder for EntityBuilder<'a>

source§

impl<'a> Builder for LazyBuilder<'a>