assemble-core 0.2.0

The core crate of the assemble-rs package
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use crate::__export::ProjectResult;
use crate::task::work_handler::output::Output;
use crate::{Executable, Task};

pub mod work;

/// Configures the inputs and outputs of a task
pub trait TaskIO<T: Task = Self> {
    /// During the initialization of the task, configures the inputs and outputs of the task.
    fn configure_io(_task: &mut Executable<T>) -> ProjectResult {
        Ok(())
    }

    /// Recovers outputs from previous run if up-to-date
    fn recover_outputs(&mut self, _output: &Output) -> ProjectResult {
        Ok(())
    }
}