pub trait CodeGenBackend {
// Required method
fn generate(
&self,
schemas: &[JsonSchema],
settings: &CodeGenSettings,
) -> CodeGenResult<GenerateRustOutput>;
}Expand description
Contract for a codegen backend: schemas in, GenerateRustOutput with optional shared buffer and per-schema buffers.
Required Methods§
Sourcefn generate(
&self,
schemas: &[JsonSchema],
settings: &CodeGenSettings,
) -> CodeGenResult<GenerateRustOutput>
fn generate( &self, schemas: &[JsonSchema], settings: &CodeGenSettings, ) -> CodeGenResult<GenerateRustOutput>
Generate model source for each schema. Returns shared buffer (if any) and one buffer per schema.
§Errors
Returns CodeGenError::RootNotObject if a root schema is not an object with properties.
Returns CodeGenError::Io on write failure.
Returns CodeGenError::Batch with index when one schema in the batch fails.