Expand description
§CMSIS PDSC Parser
This is a Rust crate that aims to provide a convenient abstraction to parse
CMSIS Pack Description Format (PDSC)
files.
This project takes in a PDSC file and parses into a Rust datastructure.
§Usage
Add the dependency with the following command:
cargo add cmsis-pdsc-parser
cargo add roxmltreeMinimal example:
const PDSC_PATH: &str = "Microchip.PIC32CM-PL_DFP.pdsc";
fn main() {
// Read the document content into memory
let pdsc_content: String = std::fs::read_to_string(PDSC_PATH).unwrap();
// Parse the XML document
let document = roxmltree::Document::parse(&pdsc_content).unwrap();
// Parse the PDSC file as the root `Package` element.
let pdsc = cmsis_pdsc_parser::Package::new(&document);
println!("{:#?}", pdsc);
}Modules§
- apis
- Contains the types required to represent a PDSC APIs element
- boards
- Contains the types required to represent a PDSC Boards element
- components
- Contains the types required to represent a PDSC Components element
- conditions
- Contains the types required to represent a PDSC Conditions element
- csolution
- Contains the types required to represent a PDSC csolution element
- debug_
access - Types representing PDSC Debug Access
- examples
- Contains the types required to represent a PDSC Examples element
- family
- Contains the types required to represent a PDSC Family element
- generators
- Contains the types required to represent a PDSC Generators element
- part_
taxonomy - Contains the types required to represent a PDSC Part-Taxonomy element
- parts
- Contains the types required to represent a PDSC Parts element
- pdsc
- PDSC pack-level types (description, releases, devices, etc.)
- requirements
- Contains the types required for the PDSC Requirements element
- taxonomy
- Contains the types required to represent a PDSC Taxonomy element
Structs§
- Package
- Represents PDSC Package which is the root element of the PDSC file
Enums§
- Error
- Errors