rust/vec2d/src/lib.rs
changeset 14121 69db1d2e4cec
parent 14032 2869c2ccb1b8
child 14160 c24a76f131d6
equal deleted inserted replaced
14120:7bb0e27910aa 14121:69db1d2e4cec
    53 impl<T: Copy> Vec2D<T> {
    53 impl<T: Copy> Vec2D<T> {
    54     pub fn new(size: Size, value: T) -> Self {
    54     pub fn new(size: Size, value: T) -> Self {
    55         Self { size, data: vec![value; size.area()] }
    55         Self { size, data: vec![value; size.area()] }
    56     }
    56     }
    57 
    57 
       
    58     pub fn raw_data(&self) -> &[T] {
       
    59         &self.data
       
    60     }
       
    61 
    58     #[inline]
    62     #[inline]
    59     pub fn get(&self, row: usize, column: usize) -> Option<&<usize as SliceIndex<[T]>>::Output> {
    63     pub fn get(&self, row: usize, column: usize) -> Option<&<usize as SliceIndex<[T]>>::Output> {
    60         self.data.get(row * self.width() + column)
    64         self.data.get(row * self.width() + column)
    61     }
    65     }
    62 
    66