vkxml

Documentation.

vkxml is a Serde Rust representation of the vk_new.xml file generated by https://github.com/NicolBolas/New-Vulkan-XML-Format.

vkxml has been made for use with serde-xml-rs and, because of some quirky attributes required by serde-xml-rs, most likely will not work with any other serde xml parser.

Usage

To get started, you'll need a copy of vk_new.xml which you can easily generate by following the directions on New-Vulkan-XML-Format. vk_new.xml is a lossless, reformatted version of Vulkan's vk.xml into something that's easier to parse.

After that, you can create your Rust project:

Cargo.toml toml [dependencies] serde-xml-rs = {git = "https://github.com/RReverser/serde-xml-rs.git"} vkxml = {git = "https://github.com/terrybrashaw/vkxml"}

main.rs ```rust extern crate serdexmlrs; extern crate vkxml;

fn main() { let xml = std::fs::File::open("vknew.xml").unwrap(); let spec: vkxml::Registry = serdexmlrs::fromreader(xml).unwrap(); println!("{:?}", spec); } ```