Skip to main content

actr_cli/templates/rust/
mod.rs

1pub mod echo;
2pub mod empty;
3
4pub use echo::load;
5
6use super::{LangTemplate, ProjectTemplateName, TemplateContext};
7use crate::error::Result;
8use std::collections::HashMap;
9
10pub struct RustTemplate;
11
12impl LangTemplate for RustTemplate {
13    fn load_files(
14        &self,
15        template_name: ProjectTemplateName,
16        context: &TemplateContext,
17    ) -> Result<HashMap<String, String>> {
18        let mut files = HashMap::new();
19
20        match template_name {
21            ProjectTemplateName::Echo => {
22                echo::load(&mut files, context.is_service)?;
23            }
24            ProjectTemplateName::Empty => {
25                empty::load(&mut files)?;
26            }
27            ProjectTemplateName::DataStream => {
28                empty::load(&mut files)?;
29            }
30        }
31
32        Ok(files)
33    }
34}