use std::fs;
use std::path::Path;
fn main() {
let doc = pointlock_ir::schema_gen::flow_ir_schema();
let out_path =
Path::new(env!("CARGO_MANIFEST_DIR")).join("../../schema/generated/flow-ir.schema.json");
let out_dir = out_path.parent().expect("output path has a parent");
fs::create_dir_all(out_dir).expect("create schema/generated/");
let mut rendered = serde_json::to_string_pretty(&doc).expect("schema renders");
rendered.push('\n');
fs::write(&out_path, rendered).expect("write generated schema");
let display = out_path.canonicalize().unwrap_or(out_path);
println!("wrote {}", display.display());
}