rust/hwphysics/src/lib.rs
changeset 15762 84c07aa94b61
parent 15383 701ad89a9f2a
child 15768 704f00889f3a
equal deleted inserted replaced
15761:e7eb0cd5b0e4 15762:84c07aa94b61
     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::{