mod error;
mod rust_backend;
mod settings;
pub use error::{CodeGenError, CodeGenResult};
pub use rust_backend::{RustBackend, generate_rust};
pub use settings::{CodeGenSettings, CodeGenSettingsBuilder, DedupeMode, ModelNameSource};
use crate::json_schema::JsonSchema;
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct GenerateRustOutput {
pub shared: Option<Vec<u8>>,
pub per_schema: Vec<Vec<u8>>,
}
pub trait CodeGenBackend {
fn generate(
&self,
schemas: &[JsonSchema],
settings: &CodeGenSettings,
) -> CodeGenResult<GenerateRustOutput>;
}