Struct specs::world::LazyBuilder[][src]

#[must_use = "Please call .build() on this to finish building it."]
pub struct LazyBuilder<'a> { pub entity: Entity, pub lazy: &'a LazyUpdate, }

Like EntityBuilder, but inserts the component lazily, meaning on maintain. If you need those components to exist immediately, you have to insert them into the storages yourself.

Fields

The entity that we're inserting components for.

The lazy update reference.

Trait Implementations

impl<'a> MarkedBuilder for LazyBuilder<'a>
[src]

Add a Marker to the entity by fetching the associated allocator.

This will be applied on the next world.maintain().

Examples

use specs::prelude::*;
use specs::saveload::{MarkedBuilder, U64Marker, U64MarkerAllocator};
let mut world = World::new();

world.register::<U64Marker>();
world.add_resource(U64MarkerAllocator::new());

let my_entity = lazy
    .create_entity(&entities)
    /* .with(Component1) */
    .marked::<U64Marker>()
    .build();

Panics

Panics during world.maintain() in case there's no allocator added to the World.

impl<'a> Builder for LazyBuilder<'a>
[src]

Inserts a component using LazyUpdate.

Finishes the building and returns the built entity. Please note that no component is associated to this entity until you call World::maintain.

Auto Trait Implementations

impl<'a> Send for LazyBuilder<'a>

impl<'a> Sync for LazyBuilder<'a>