endcap-sl-software-ri-gener.../src/main.rs

37 lines
960 B
Rust
Raw Normal View History

2025-01-29 17:12:15 +09:00
use std::fs;
use anyhow::Result;
2025-01-31 02:17:48 +09:00
use endcap_sl_software_ri_generator::{generator::CodeGen, types};
2025-01-29 18:50:32 +09:00
fn main() -> Result<()> {
env_logger::init();
2025-01-29 01:55:23 +09:00
println!("Hello, world!");
let xmlfile = fs::read_to_string("./csr.xml")?;
2025-01-29 17:12:15 +09:00
let doc = roxmltree::Document::parse_with_options(
&xmlfile,
roxmltree::ParsingOptions {
allow_dtd: true,
nodes_limit: u32::MAX,
},
)?;
// println!("Parsed: {:#?}", doc);
// println!("Root: {:?}", doc.root_element());
let register_map = types::Module::from_xml_dom(doc.root_element())?;
println!("read: {:#?}", register_map);
2025-02-02 16:48:15 +09:00
// println!("{}", register_map.generate_register_interface()?);
fs::write(
"testgen.rs",
register_map
.generate_register_interface(proc_macro2::Ident::new(
"a",
proc_macro2::Span::call_site(),
))?
.to_string(),
)?;
2025-01-31 02:17:48 +09:00
Ok(())
2025-01-29 01:55:23 +09:00
}