(&mut self, offset: isize)
| 2095 | } |
| 2096 | |
| 2097 | fn cycle_agent(&mut self, offset: isize) { |
| 2098 | let modes = self.get_mode_agents(); |
| 2099 | if modes.len() <= 1 { |
| 2100 | return; |
| 2101 | } |
| 2102 | |
| 2103 | let current_idx = modes |
| 2104 | .iter() |
| 2105 | .position(|m| m.id == self.agent_type) |
| 2106 | .unwrap_or(0); |
| 2107 | |
| 2108 | let len = modes.len() as isize; |
| 2109 | let next_idx = ((current_idx as isize + offset) % len + len) % len; |
| 2110 | let next = &modes[next_idx as usize]; |
| 2111 | |
| 2112 | self.agent_type = next.id.clone(); |
| 2113 | self.load_current_model_name(); |
| 2114 | } |
| 2115 | |
| 2116 | fn load_current_model_name(&mut self) { |
| 2117 | let agent_type = self.agent_type.clone(); |
no test coverage detected