Struct hecs::EntityBuilderClone
source · [−]pub struct EntityBuilderClone { /* private fields */ }
Expand description
Variant of EntityBuilder
that clones components on use
let mut world = World::new();
let mut builder = EntityBuilderClone::new();
builder.add(123).add("abc");
let bundle = builder.build();
let e = world.spawn(&bundle);
let f = world.spawn(&bundle); // `&bundle` can be used many times
assert_eq!(*world.get::<i32>(e).unwrap(), 123);
assert_eq!(*world.get::<&str>(e).unwrap(), "abc");
assert_eq!(*world.get::<i32>(f).unwrap(), 123);
assert_eq!(*world.get::<&str>(f).unwrap(), "abc");
Implementations
Add component
to the entity.
If the bundle already contains a component of type T
, it will be dropped and replaced with
the most recently added one.
Add all components in bundle
to the entity.
If the bundle contains any component which matches the type of a component
already in the EntityBuilder
, the newly added component from the bundle
will replace the old component and the old component will be dropped.
Convert into a value whose shared references are DynamicBundle
s suitable for repeated
spawning
Uniquely borrow the component of type T
, if it exists
Enumerate the types of the entity builder’s components
Trait Implementations
Returns the “default value” for a type. Read more
Performs the conversion.
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for EntityBuilderClone
impl Send for EntityBuilderClone
impl Sync for EntityBuilderClone
impl Unpin for EntityBuilderClone
impl UnwindSafe for EntityBuilderClone
Blanket Implementations
Mutably borrows from an owned value. Read more