fn filter_memory_requirements(&self, ash_mask: u32) -> u32 {
        let mut hal_index = 0;
        let mut mask = 0;
        for ash_index in 0..32 {
            if self.valid_ash_memory_types & (1 << ash_index) != 0 {
                if ash_mask & (1 << ash_index) != 0 {
                    mask |= 1 << hal_index;
                }
                hal_index += 1;
            }
        }
        mask
    }
/// We only work with a subset of Ash-exposed memory types that we know.
/// This function filters an ash mask into our mask.
We only work with a subset of Ash-exposed memory types that we know.
This function filters an ash mask into our mask.
We only work with a subset of Ash - exposed memory types that we know . This function filters an ash mask into our mask .
fn filter_memory_requirements(&self, ash_mask: u32) -> u32 {
        let mut hal_index = 0;
        let mut mask = 0;
        for ash_index in 0..32 {
            if self.valid_ash_memory_types & (1 << ash_index) != 0 {
                if ash_mask & (1 << ash_index) != 0 {
                    mask |= 1 << hal_index;
                }
                hal_index += 1;
            }
        }
        mask
    }
fn filter_memory_requirements ( & self , ash_mask : u32 ) -> u32 { let mut hal_index = 0 ; let mut mask = 0 ; for ash_index in 0 .. 32 { if self . valid_ash_memory_types & ( 1 << ash_index ) != 0 { if ash_mask & ( 1 << ash_index ) != 0 { mask |= 1 << hal_index ; } hal_index += 1 ; } } mask }
We only work with a subset of Ash-exposed memory types that we know.
We only work with a subset of Ash - exposed memory types that we know .
&self
ash_mask
u32