equal
deleted
inserted
replaced
9 use land2d::Land2D; |
9 use land2d::Land2D; |
10 |
10 |
11 use crate::{ |
11 use crate::{ |
12 collision::CollisionProcessor, |
12 collision::CollisionProcessor, |
13 common::{GearAllocator, GearId, Millis}, |
13 common::{GearAllocator, GearId, Millis}, |
14 data::GearDataManager, |
14 data::{DataIterator, GearDataManager, TypeIter}, |
15 physics::PhysicsProcessor, |
15 physics::PhysicsProcessor, |
16 time::TimeProcessor, |
16 time::TimeProcessor, |
17 }; |
17 }; |
18 |
18 |
19 pub struct World { |
19 pub struct World { |
65 |
65 |
66 #[inline] |
66 #[inline] |
67 pub fn add_gear_data<T: Clone + 'static>(&mut self, gear_id: GearId, data: &T) { |
67 pub fn add_gear_data<T: Clone + 'static>(&mut self, gear_id: GearId, data: &T) { |
68 self.data.add(gear_id, data); |
68 self.data.add(gear_id, data); |
69 } |
69 } |
|
70 |
|
71 #[inline] |
|
72 pub fn iter_data<T: TypeIter + 'static>(&mut self) -> DataIterator<T> { |
|
73 self.data.iter() |
|
74 } |
70 } |
75 } |
71 |
76 |
72 #[cfg(test)] |
77 #[cfg(test)] |
73 mod tests { |
78 mod tests { |
74 use crate::{ |
79 use crate::{ |