Skip to main content

generate_from_resolved

Function generate_from_resolved 

Source
pub fn generate_from_resolved<O: AsRef<Path>>(
    resolved: ResolvedConfig,
    output: O,
) -> Result<()>
Expand description

Generate proc-macro code from an already resolved configuration.

This is useful when you want to programmatically build a configuration and generate code without reading from a file.

§Errors

Returns an error if writing the output file fails.

§Example

use derive_defs::resolver::{ResolvedConfig, ResolvedDef};
use std::collections::HashMap;

let mut defs = HashMap::new();
defs.insert("model".to_string(), ResolvedDef {
    name: "model".to_string(),
    traits: vec!["Debug".to_string(), "Clone".to_string()],
    attrs: vec![],
});

let config = ResolvedConfig { defs };
derive_defs::generate_from_resolved(config, "/tmp/output.rs").unwrap();