class ECS::World
 
  - ECS::World
- Reference
- Object
Overview
Root level container for all entities / components, is iterated with ECS::Systems
Defined in:
myecs.crConstructors
- 
        .new
        
          Creates empty world 
Instance Method Summary
- 
        #all_of(*args, **options)
        
          Creates new Filterand adds a condition to it
- 
        #all_of(*args, **options, &)
        
          Creates new Filterand adds a condition to it
- 
        #any_of(*args, **options)
        
          Creates new Filterand adds a condition to it
- 
        #any_of(*args, **options, &)
        
          Creates new Filterand adds a condition to it
- 
        #component_exists?(typ)
        
          Returns true if at least one component of type typexists in a world
- 
        #delete_all
        
          Deletes all components and entities from the world 
- 
        #each_entity(& : Entity -> )
        
          Iterates over all entities 
- 
        #entities_capacity
        
          number of entities that could exist in a world before reallocation of pools 
- 
        #entities_count
        
          total number of alive entities in a world 
- 
        #exclude(*args, **options)
        
          Creates new Filterand adds a condition to it
- 
        #exclude(*args, **options, &)
        
          Creates new Filterand adds a condition to it
- #inspect(io)
- 
        #new_entity
        
          Creates new entity in a world context. 
- 
        #new_filter
        
          Creates new Filter. 
- 
        #of(*args, **options)
        
          Creates new Filterand adds a condition to it
- 
        #of(*args, **options, &)
        
          Creates new Filterand adds a condition to it
- 
        #query(typ)
        
          Returns SimpleFilter (stack-allocated) that can iterate over single component 
- 
        #stats(& : String, Int32 -> )
        
          Non-allocating version of #stats.
- 
        #stats
        
          Returns Hash containing count of components world = init_benchmark_world(1000000) puts world.stats # prints {"Comp1" => 500000, "Comp2" => 333334, "Comp3" => 200000, "Comp4" => 142858, "Config" => 1}
Constructor Detail
Instance Method Detail
Creates new entity in a world context. Basically doesn't cost anything as it just increase entities counter. Entity don't take up space without components.
Creates new Filter.
This call can be skipped:
Instead of world.new_filter.of(Comp1) you can do world.of(Comp1)
Non-allocating version of #stats. Yields component names and count of corresponding components
world = init_benchmark_world(1000000)
world.stats do |comp_name, value| 
  puts "#{comp_name}: #{value}" 
endReturns Hash containing count of components
world = init_benchmark_world(1000000)
puts world.stats # prints {"Comp1" => 500000, "Comp2" => 333334, "Comp3" => 200000, "Comp4" => 142858, "Config" => 1}