var searchIndex = {}; searchIndex["qecs"] = {"doc":"","items":[[0,"prelude","qecs::core","",null,null],[8,"_EventBuffer","qecs::core::prelude","Workaround for lack of HK-lifetimes.",null,null],[16,"_Value","","",0,null],[16,"Iter","","",0,null],[8,"ComponentStore","","",null,null],[16,"Value","","",1,null],[10,"assign","","",1,null],[10,"release","","",1,null],[10,"get","","Returns `None` if `id` is not assigned.",1,null],[10,"get_mut","","Returns `None` if `id` is not assigned.",1,null],[10,"values","","",1,null],[10,"values_mut","","",1,null],[8,"EntityStoreIter","","",null,null],[10,"iter","","",2,null],[8,"BufferBase","","",null,null],[10,"len","","",3,null],[10,"clear","","",3,null],[8,"StoreBase","","",null,null],[16,"Id","","",4,null],[10,"len","","",4,null],[10,"is_assigned","","",4,null],[10,"release_drop","","A variant of `.release(id)` which drops the returned component.\nReturns `true` if sucessful.",4,null],[10,"clear","","",4,null],[8,"ComponentStoreIter","","",null,null],[10,"iter","","",5,null],[10,"iter_mut","","",5,null],[8,"PrimaryIdManager","","",null,null],[16,"Id","","",6,null],[10,"len","","",6,null],[10,"maximum_id_count","","",6,null],[10,"validate","","Tests if `id` is usable.",6,null],[10,"invalidate","","Makes `id` unusable and returns `true`.\nReturns `false` if `id` is already invalid.",6,null],[10,"generate","","Generates a new id.",6,null],[10,"activate","","",6,null],[10,"clear","","",6,null],[10,"iter","","",6,null],[8,"_ComponentStore","","Workaround for lack of HK-lifetimes.",null,null],[16,"_Value","","",7,null],[16,"Values","","",7,null],[16,"ValuesMut","","",7,null],[8,"EntityStore","","",null,null],[10,"assign","","",8,null],[11,"release","","",8,null],[8,"_StoreWithDirtyState","","Workaround for lack of HK-lifetimes.",null,null],[16,"DirtyEntities","","",9,null],[8,"_EntityStoreIter","","",null,null],[16,"Iter","","",10,null],[8,"EventBuffer","","",null,null],[16,"Value","","",11,null],[10,"write","","",11,null],[10,"iter","","",11,null],[8,"StoreWithDirtyState","","",null,null],[10,"was_cleared","","",12,null],[10,"dirty_entities","","",12,null],[8,"_ComponentStoreIter","","Workaround for lack of HK-lifetimes.",null,null],[16,"Iter","","",13,null],[16,"IterMut","","",13,null],[5,"destroy_entity","qecs::core","Safe abstraction for destroying a single entity.",null,null],[8,"ProcessBase","","",null,null],[10,"_update","","",14,null],[8,"BufferBase","","",null,null],[10,"len","","",3,null],[10,"clear","","",3,null],[8,"StoreBase","","",null,null],[16,"Id","","",4,null],[10,"len","","",4,null],[10,"is_assigned","","",4,null],[10,"release_drop","","A variant of `.release(id)` which drops the returned component.\nReturns `true` if sucessful.",4,null],[10,"clear","","",4,null],[8,"ComponentStoreIter","","",null,null],[10,"iter","","",5,null],[10,"iter_mut","","",5,null],[8,"ServiceBase","","",null,null],[11,"on_before_frame","","",15,null],[11,"on_after_frame","","",15,null],[4,"IdActivationError","","",null,null],[13,"MaximumIdCountReached","","The id couldn't be activated because the maximum id count this id-type\nor this id-manager allows was reached.",16,null],[13,"AlreadyActivated","","The id couldn't be activated because it already is.",16,null],[13,"SlotOccupied","","The id couldn't be activated because the internal slot (in the id-manager) it\nwould use is already occupied.",16,null],[8,"EntityStore","","",null,null],[10,"assign","","",8,null],[11,"release","","",8,null],[8,"_EntityStoreIter","","",null,null],[16,"Iter","","",10,null],[8,"EventBuffer","","",null,null],[16,"Value","","",11,null],[10,"write","","",11,null],[10,"iter","","",11,null],[3,"SimulationBuilder","","",null,null],[8,"Component","","",null,null],[8,"Id","","TODO: should this be ToString/FromStr?",null,null],[8,"_EventBuffer","","Workaround for lack of HK-lifetimes.",null,null],[16,"_Value","","",0,null],[16,"Iter","","",0,null],[8,"ComponentStore","","",null,null],[16,"Value","","",1,null],[10,"assign","","",1,null],[10,"release","","",1,null],[10,"get","","Returns `None` if `id` is not assigned.",1,null],[10,"get_mut","","Returns `None` if `id` is not assigned.",1,null],[10,"values","","",1,null],[10,"values_mut","","",1,null],[6,"IdActivationResult","","",null,null],[3,"Simulation","","",null,null],[3,"Valid","","Indicates that an id is valid and can be used to safely access an entity.",null,null],[4,"Dirtied","","* `assign -> Dirtied::Assigned`\n* `{release, clear} -> Dirtied::Released`\n* `{get_mut, iter_mut} -> Dirtied::Modified`\n* `release & assign -> Dirtied::Modified`\n* `assign & release` -> (nothing)`",null,null],[13,"Assigned","","",17,null],[13,"Released","","",17,null],[13,"Modified","","",17,null],[8,"Event","","",null,null],[8,"EntityStoreIter","","",null,null],[10,"iter","","",2,null],[8,"PrimaryIdManager","","",null,null],[16,"Id","","",6,null],[10,"len","","",6,null],[10,"maximum_id_count","","",6,null],[10,"validate","","Tests if `id` is usable.",6,null],[10,"invalidate","","Makes `id` unusable and returns `true`.\nReturns `false` if `id` is already invalid.",6,null],[10,"generate","","Generates a new id.",6,null],[10,"activate","","",6,null],[10,"clear","","",6,null],[10,"iter","","",6,null],[8,"_ComponentStore","","Workaround for lack of HK-lifetimes.",null,null],[16,"_Value","","",7,null],[16,"Values","","",7,null],[16,"ValuesMut","","",7,null],[8,"Process","","",null,null],[16,"IdMgrMode","","",18,null],[16,"StoreSelection","","",18,null],[16,"BufferSelection","","",18,null],[16,"ServiceSelection","","",18,null],[16,"IdMgr","","",18,null],[16,"Stores","","",18,null],[16,"Buffers","","",18,null],[16,"Services","","",18,null],[10,"update","","",18,null],[8,"Action","","",null,null],[8,"_StoreWithDirtyState","","Workaround for lack of HK-lifetimes.",null,null],[16,"DirtyEntities","","",9,null],[6,"IdGenerationResult","","",null,null],[8,"IdWithIndex","","For ids which closely mirror the total entity count.\nIds may either have an indexable-part or consist entirely of it.",null,null],[10,"max_index","","",19,{"inputs":[],"output":{"name":"usize"}}],[10,"index","","",19,null],[4,"IdGenerationError","","",null,null],[13,"MaximumIdCountReached","","The id couldn't be activated because the maximum id count this id-type\nor this id-manager allows was reached.",20,null],[8,"_PrimaryIdManager","","",null,null],[16,"_Id","","",21,null],[16,"Iter","","",21,null],[8,"_ComponentStoreIter","","Workaround for lack of HK-lifetimes.",null,null],[16,"Iter","","",13,null],[16,"IterMut","","",13,null],[8,"StoreWithDirtyState","","",null,null],[10,"was_cleared","","",12,null],[10,"dirty_entities","","",12,null],[0,"btree_map_store","qecs","",null,null],[3,"BTreeMapStore","qecs::btree_map_store","",null,null],[6,"Values","","",null,null],[6,"ValuesMut","","",null,null],[6,"Iter","","",null,null],[6,"IterMut","","",null,null],[11,"from","","",22,{"inputs":[{"name":"btreemap"}],"output":{"name":"self"}}],[11,"default","","",22,{"inputs":[],"output":{"name":"self"}}],[11,"len","","",22,null],[11,"is_assigned","","",22,null],[11,"release_drop","","",22,null],[11,"clear","","",22,null],[11,"assign","","",22,null],[11,"release","","",22,null],[11,"get","","",22,null],[11,"get_mut","","",22,null],[11,"values","","",22,null],[11,"values_mut","","",22,null],[11,"iter","","",22,null],[11,"iter_mut","","",22,null],[11,"extend","","",22,null],[0,"vec_map_store","qecs","",null,null],[3,"VecMapStore","qecs::vec_map_store","",null,null],[6,"Values","","",null,null],[6,"ValuesMut","","",null,null],[11,"from","","",23,{"inputs":[{"name":"vecmap"}],"output":{"name":"self"}}],[11,"default","","",23,{"inputs":[],"output":{"name":"self"}}],[11,"len","","",23,null],[11,"is_assigned","","",23,null],[11,"release_drop","","",23,null],[11,"clear","","",23,null],[11,"assign","","",23,null],[11,"release","","",23,null],[11,"get","","",23,null],[11,"get_mut","","",23,null],[11,"values","","",23,null],[11,"values_mut","","",23,null],[11,"extend","","",23,null],[0,"btree_set_store","qecs","",null,null],[3,"BTreeSetStore","qecs::btree_set_store","",null,null],[6,"Iter","","",null,null],[11,"from","","",24,{"inputs":[{"name":"btreeset"}],"output":{"name":"self"}}],[11,"default","","",24,{"inputs":[],"output":{"name":"self"}}],[11,"len","","",24,null],[11,"is_assigned","","",24,null],[11,"release_drop","","",24,null],[11,"clear","","",24,null],[11,"assign","","",24,null],[11,"iter","","",24,null],[11,"extend","","",24,null],[0,"vec_buffer","qecs","",null,null],[3,"VecBuffer","qecs::vec_buffer","",null,null],[6,"Iter","","",null,null],[11,"from","","",25,{"inputs":[{"name":"vec"}],"output":{"name":"self"}}],[11,"default","","",25,{"inputs":[],"output":{"name":"self"}}],[11,"on_before_frame","","",25,null],[11,"len","","",25,null],[11,"clear","","",25,null],[11,"write","","",25,null],[11,"iter","","",25,null],[0,"single_event_buffer","qecs","",null,null],[3,"SingleEventBuffer","qecs::single_event_buffer","",null,null],[6,"Iter","","",null,null],[11,"from","","",26,{"inputs":[{"name":"option"}],"output":{"name":"self"}}],[11,"default","","",26,{"inputs":[],"output":{"name":"self"}}],[11,"on_before_frame","","",26,null],[11,"len","","",26,null],[11,"clear","","",26,null],[11,"write","","",26,null],[11,"iter","","",26,null],[0,"simple_index_manager","qecs","",null,null],[3,"Index","qecs::simple_index_manager","",null,null],[3,"SimpleIndexManager","","",null,null],[3,"Iter","","",null,null],[6,"Index8","","",null,null],[6,"Index16","","",null,null],[6,"Index32","","",null,null],[8,"SimpleIndex","","",null,null],[11,"decode","","",27,{"inputs":[{"name":"__du"}],"output":{"name":"result"}}],[11,"encode","","",27,null],[11,"eq","","",27,null],[11,"ne","","",27,null],[11,"cmp","","",27,null],[11,"partial_cmp","","",27,null],[11,"lt","","",27,null],[11,"le","","",27,null],[11,"gt","","",27,null],[11,"ge","","",27,null],[11,"clone","","",27,null],[11,"hash","","",27,null],[11,"fmt","","",27,null],[11,"from","","",27,{"inputs":[{"name":"t"}],"output":{"name":"self"}}],[11,"max_index","","",27,{"inputs":[],"output":{"name":"usize"}}],[11,"index","","",27,null],[11,"default","","",28,{"inputs":[],"output":{"name":"self"}}],[11,"clone","","",29,null],[11,"next","","",29,null],[11,"len","","",28,null],[11,"maximum_id_count","","",28,null],[11,"validate","","",28,null],[11,"invalidate","","",28,null],[11,"generate","","",28,null],[11,"activate","","",28,null],[11,"clear","","",28,null],[11,"iter","","",28,null],[14,"qecs_newtype!","qecs","",null,null],[11,"eq","qecs::core","",30,null],[11,"ne","","",30,null],[11,"cmp","","",30,null],[11,"partial_cmp","","",30,null],[11,"lt","","",30,null],[11,"le","","",30,null],[11,"gt","","",30,null],[11,"ge","","",30,null],[11,"clone","","",30,null],[11,"hash","","",30,null],[11,"new","","",30,{"inputs":[{"name":"id"}],"output":{"name":"valid"}}],[11,"fmt","","",30,null],[11,"borrow","","",30,null],[11,"deref","","",30,null],[11,"is_type","","",15,null],[11,"unchecked_downcast_ref","","",15,null],[11,"downcast_ref","","",15,null],[11,"unchecked_downcast_mut","","",15,null],[11,"downcast_mut","","",15,null],[11,"downcast_boxed","","",15,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"is","","",15,null],[11,"unchecked_downcast_ref","","",15,null],[11,"downcast_ref","","",15,null],[11,"unchecked_downcast_mut","","",15,null],[11,"downcast_mut","","",15,null],[11,"downcast_boxed","","",15,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"is_type","","",4,null],[11,"unchecked_downcast_ref","","",4,null],[11,"downcast_ref","","",4,null],[11,"unchecked_downcast_mut","","",4,null],[11,"downcast_mut","","",4,null],[11,"downcast_boxed","","",4,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"is","","",4,null],[11,"unchecked_downcast_ref","","",4,null],[11,"downcast_ref","","",4,null],[11,"unchecked_downcast_mut","","",4,null],[11,"downcast_mut","","",4,null],[11,"downcast_boxed","","",4,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"cmp","","",17,null],[11,"partial_cmp","","",17,null],[11,"lt","","",17,null],[11,"le","","",17,null],[11,"gt","","",17,null],[11,"ge","","",17,null],[11,"eq","","",17,null],[11,"ne","","",17,null],[11,"clone","","",17,null],[11,"hash","","",17,null],[11,"fmt","","",17,null],[11,"borrow","","",17,null],[11,"eq","","",20,null],[11,"ne","","",20,null],[11,"fmt","","",20,null],[11,"eq","","",16,null],[11,"ne","","",16,null],[11,"fmt","","",16,null],[11,"is_type","","",3,null],[11,"unchecked_downcast_ref","","",3,null],[11,"downcast_ref","","",3,null],[11,"unchecked_downcast_mut","","",3,null],[11,"downcast_mut","","",3,null],[11,"downcast_boxed","","",3,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"is","","",3,null],[11,"unchecked_downcast_ref","","",3,null],[11,"downcast_ref","","",3,null],[11,"unchecked_downcast_mut","","",3,null],[11,"downcast_mut","","",3,null],[11,"downcast_boxed","","",3,{"inputs":[{"name":"box"}],"output":{"name":"result"}}],[11,"ids","","",31,null],[11,"stores","","",31,null],[11,"buffers","","",31,null],[11,"services","","",31,null],[11,"update","","",31,null],[11,"new","","",32,{"inputs":[{"name":"idmgr"}],"output":{"name":"simulationbuilder"}}],[11,"stores","","",32,null],[11,"buffers","","",32,null],[11,"services","","",32,null],[11,"pipeline","","TODO: This isn't very user-friendly. Currently works fine if you have a fixed amount\nof stages, but beyond that it's quite whacky.",32,null],[11,"build","","",32,null],[11,"default","","",32,{"inputs":[],"output":{"name":"simulationbuilder"}}]],"paths":[[8,"_EventBuffer"],[8,"ComponentStore"],[8,"EntityStoreIter"],[8,"BufferBase"],[8,"StoreBase"],[8,"ComponentStoreIter"],[8,"PrimaryIdManager"],[8,"_ComponentStore"],[8,"EntityStore"],[8,"_StoreWithDirtyState"],[8,"_EntityStoreIter"],[8,"EventBuffer"],[8,"StoreWithDirtyState"],[8,"_ComponentStoreIter"],[8,"ProcessBase"],[8,"ServiceBase"],[4,"IdActivationError"],[4,"Dirtied"],[8,"Process"],[8,"IdWithIndex"],[4,"IdGenerationError"],[8,"_PrimaryIdManager"],[3,"BTreeMapStore"],[3,"VecMapStore"],[3,"BTreeSetStore"],[3,"VecBuffer"],[3,"SingleEventBuffer"],[3,"Index"],[3,"SimpleIndexManager"],[3,"Iter"],[3,"Valid"],[3,"Simulation"],[3,"SimulationBuilder"]]}; initSearch(searchIndex);