gmt_dos_actors/model/
flowchart.rs1use crate::{actor::PlainActor, framework::model::GetName};
2
3use super::{Model, UnknownOrReady};
4
5impl<State> IntoIterator for &Model<State>
6where
7 State: UnknownOrReady,
8{
9 type Item = PlainActor;
10
11 type IntoIter = std::vec::IntoIter<Self::Item>;
12
13 fn into_iter(self) -> Self::IntoIter {
14 self.actors
15 .as_ref()
16 .map(|actors| {
17 actors
18 .iter()
19 .map(|a| a.as_plain())
20 .collect::<Vec<PlainActor>>()
21 })
22 .unwrap_or_default()
23 .into_iter()
24 }
25}
26
27impl<State> GetName for Model<State>
28where
29 State: UnknownOrReady,
30{
31 fn get_name(&self) -> String {
32 self.name
33 .as_ref()
34 .map_or("integrated_model", |x| x.as_str())
35 .into()
36 }
37}