(executor: &mut Executor)
| 33 | let (mut delay_executor, delay_tx) = DelayExecutor::new(executor.clone()); |
| 34 | let (mut delay_move_executor, delay_move_tx) = DelayExecutor::new(executor.clone()); |
| 35 | let (mut loop_move_executor, loop_move_tx) = DelayExecutor::new(executor.clone()); |
| 36 | executor.set_delay_channels( |
| 37 | delay_tx.clone(), |
| 38 | delay_move_tx.clone(), |
| 39 | loop_move_tx.clone(), |
| 40 | ); |
| 41 | delay_executor.executor.set_delay_channels( |
| 42 | delay_tx.clone(), |
| 43 | delay_move_tx.clone(), |
| 44 | loop_move_tx.clone(), |
| 45 | ); |
| 46 | delay_move_executor.executor.set_delay_channels( |
| 47 | delay_tx.clone(), |
| 48 | delay_move_tx.clone(), |
| 49 | loop_move_tx.clone(), |
| 50 | ); |
| 51 | loop_move_executor |
| 52 | .executor |
| 53 | .set_delay_channels(delay_tx, delay_move_tx, loop_move_tx); |
| 54 | |
| 55 | let (mut auto_executor, auto_tx, auto_delay_tx) = AutoExecutor::new(executor.clone()); |
| 56 | executor.set_auto_tx(auto_delay_tx.clone()); |
| 57 | auto_executor.executor.set_auto_tx(auto_delay_tx); |
| 58 | |
| 59 | let (mut skip_executor, skip_tx) = SkipExecutor::new(executor.clone()); |
| 60 | |
| 61 | text_executor.start_timer(); |
| 62 | delay_executor.start_timer(); |
| 63 | delay_move_executor.start_timer(); |
| 64 | loop_move_executor.start_timer(); |
| 65 | auto_executor.start_timer(); |
| 66 | skip_executor |
| 67 | .executor |
| 68 | .set_status_channel(auto_tx.clone(), skip_tx.clone()); |
| 69 | skip_executor.start_timer(); |
| 70 | |
| 71 | executor.set_status_channel(auto_tx, skip_tx); |
| 72 | executor.set_save_tx(spawn_save_task()); |
| 73 | |
| 74 | executor.load_save_data()?; |
| 75 | executor.load_volume(); |
| 76 | executor.load_character_volumes(); |
| 77 | executor.load_auto(); |
| 78 | executor.load_text(); |
| 79 | |
| 80 | Ok(ExecutorCluster { |
| 81 | _text_executor: text_executor, |
| 82 | _auto_executor: auto_executor, |
| 83 | _skip_executor: skip_executor, |
| 84 | _delay_executor: delay_executor, |
| 85 | _delay_move_executor: delay_move_executor, |
| 86 | _loop_move_executor: loop_move_executor, |
| 87 | }) |
| 88 | } |
no test coverage detected