1use seqgen::prelude::*;
4
5fn main() {
6 let initial_elements = vec![String::from("x"), String::from("y")];
7 let mut seq = Sequence::new()
8 .initial_elements(initial_elements)
9 .transition_function(|alive_elements, current_element_index| {
10 let mut next = String::from(
11 alive_elements
12 .nth_element(current_element_index - 2)
13 .unwrap(),
14 );
15
16 next.push_str(
17 alive_elements
18 .nth_element(current_element_index - 1)
19 .unwrap(),
20 );
21
22 next
23 });
24
25 seq.range_mut(0, 12)
26 .unwrap()
27 .for_each(|element| println!("{element}"));
28}