Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Singletons

Singletons are components that only exist once in the World. They are attached to the singleton Entity.

use froql::world::World;
struct DeltaTime(f32);
let mut world = World::new();
// create singleton
world.singleton_add(DeltaTime(1./60.));

// access singleton
assert_eq!(world.singleton::<DeltaTime>().0, 1./60.);

// mutate singleton
world.singleton_mut::<DeltaTime>().0 = 1.;
assert_eq!(world.singleton::<DeltaTime>().0, 1.);

// remove singleton
world.singleton_remove::<DeltaTime>();