| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- EXAMPLES
- * filter on runtime values/variables (not only types)
- * support to polymorphic types (see #859)
- DOC:
- * custom storage/view
- * update entity doc when the storage based model is in place
- * in-place O(1) release/destroy for non-orphaned entities, out-of-sync model
- * view: single vs multi type views are no longer a thing actually
- * bump entities, reserved bits on identifiers
- TODO:
- * further optimize exclusion lists in multi type views (no existence check)
- * further improve meta resolve function by id (bimap)
- * get rid of observers, storage based views made them pointless - document alternatives
- * deprecate non-owning groups in favor of owning views and view packs, introduce lazy owning views
- * bring nested groups back in place (see bd34e7f)
- * work stealing job system (see #100) + mt scheduler based on const awareness for types
- * view: reduce inst due to/improve perf with index-based approach in dispatch_get/pick_and_each/each (single type too, define storage ::at and ::at_as_tuple)
- * view: update natvis as needed after the last rework, merge pools/filter in the same array, drop check (?) and turn view into a position
- * view: type-only view_iterator (dyn get/excl sizes), type-only basic_common_view (dyn get/excl sizes with pointer to array from derived)
- * combine version-mask-vs-version-bits tricks with reserved bits to allow things like enabling/disabling
- * self contained entity traits to avoid explicit specializations (ie enum constants)
- * auto type info data from types if present
- * test: push sharing types further
- * after non-continuous generation for entity storage:
- - get/reset placeholder to position after saving/loading (avoid long lookup)
- - allow skipping/reserving entity identifiers
- - documentation for reserved entities
- * storage entity: no emplace/insert, rename and add a fast range-push from above
- * view: propagate tombostone check request to iterator
- * table: pop back to support swap and pop, single column access, empty type optimization
- * checkout tools workflow
- * review constrained noexcept-ness (ie sigh)
- * offer 16b from meta_traits to users or change type
- * registry::view const invokes refresh multiple times implicitly
- * improve front (no multiple checks) and back (ie no contains) for multi-type view
- * cleanup common view from tricks to handle single swap-only and in-place, if constexpr branches
- * consider returning subrange for swap-only sparse sets or consider using filtered each for in-place storage (smilar to storage entity), cleanup views
- * exploit ref/cref in any to avoid invoking the vtable if possible
- * review meta properties and details, maybe a dense map is too much
- * self assignment support for any and meta_any
- * meta support for use defined traits (room for them on meta traits)
- * entity based component_traits
- * seek functions for meta factory (data/func/whatever)
- * investigate using any rather than shared<void> for meta properties
|