(&self, group: &SettingGroup)
| 95 | |
| 96 | impl Preset { |
| 97 | pub fn layout(&self, group: &SettingGroup) -> Vec<(u8, u8)> { |
| 98 | let mut layout: Vec<(u8, u8)> = iter::repeat((0, 0)) |
| 99 | .take(group.settings_size as usize) |
| 100 | .collect(); |
| 101 | for bool_index in &self.values { |
| 102 | let setting = &group.settings[bool_index.0]; |
| 103 | let mask = setting.byte_mask(); |
| 104 | let val = setting.byte_for_value(true); |
| 105 | assert!((val & !mask) == 0); |
| 106 | let (ref mut l_mask, ref mut l_val) = |
| 107 | *layout.get_mut(setting.byte_offset as usize).unwrap(); |
| 108 | *l_mask |= mask; |
| 109 | *l_val = (*l_val & !mask) | val; |
| 110 | } |
| 111 | layout |
| 112 | } |
| 113 | |
| 114 | pub fn setting_names<'a>( |
| 115 | &'a self, |
no test coverage detected