| Crates.io | libvirt-codegen |
| lib.rs | libvirt-codegen |
| version | 0.1.1 |
| created_at | 2025-12-13 16:09:19.992508+00 |
| updated_at | 2025-12-13 16:20:52.733993+00 |
| description | Code generator for libvirt protocol (.x files) |
| homepage | https://github.com/jimyag/libvirt-rs |
| repository | https://github.com/jimyag/libvirt-rs |
| max_upload_size | |
| id | 1983118 |
| size | 47,860 |
Code generator for libvirt protocol from XDR (.x) definition files.
This crate parses libvirt's .x protocol definition files and generates Rust types and RPC client methods.
This crate is typically used as a build dependency:
// build.rs
use std::{env, fs, path::Path};
fn main() {
let out_dir = env::var("OUT_DIR").unwrap();
let protocol = libvirt_codegen::parse_file("proto/remote_protocol.x")
.expect("failed to parse protocol");
let code = libvirt_codegen::generate(&protocol);
let dest = Path::new(&out_dir).join("generated.rs");
fs::write(&dest, code).unwrap();
println!("cargo:rerun-if-changed=proto/remote_protocol.x");
}
MIT OR Apache-2.0