pub trait CodeGenerator {
// Required methods
fn language(&self) -> Language;
fn generator_type(&self) -> GeneratorType;
fn generate(
&self,
ir: &IrSpec,
) -> Result<Vec<FileInfo>, Box<dyn Error + Send + Sync>>;
}Expand description
Trait for code generators.
Generators receive a version-agnostic IrSpec (lowered by the
orchestrator) and return a list of files. How a generator decomposes
its pipeline internally is up to the implementation.
Required Methods§
Sourcefn generator_type(&self) -> GeneratorType
fn generator_type(&self) -> GeneratorType
Returns the generator type identifier.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".