use std::path::Path;
use serde::{Deserialize, Serialize};
use supercode_interchange::workflow::Workflow;
use crate::Result;
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "lowercase")]
pub enum WorkflowHarness {
Hermes,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct WorkflowRead {
pub workflow: Workflow,
}
pub fn load(from: WorkflowHarness, home: &Path) -> Result<WorkflowRead> {
let workflow = match from {
WorkflowHarness::Hermes => {
supercode_interchange::workflow::codec::hermes::from_hermes(home)?
}
};
Ok(WorkflowRead { workflow })
}