Skip to main content

etdl_compiler/codegen/
mod.rs

1use etdl_parser::ast::EtlDocument;
2use etdl_parser::asyncapi::AsyncApiRegistry;
3use std::collections::BTreeMap;
4
5use crate::validate::Diagnostic;
6
7mod rust;
8pub use rust::RustCodeGenerator;
9
10pub trait CodeGenerator {
11    fn generate_all(
12        &self,
13        doc: &EtlDocument,
14        fault_tree_probs: &BTreeMap<String, f64>,
15        registry: &AsyncApiRegistry,
16        diagnostics: &mut Vec<Diagnostic>,
17    ) -> Result<String, String>;
18}