xsd-parser-types

Crates.ioxsd-parser-types
lib.rsxsd-parser-types
version0.1.2
created_at2025-12-11 21:46:08.867176+00
updated_at2025-12-11 22:24:25.989654+00
descriptionTypes used by the code generated by xsd-parser
homepagehttps://github.com/Bergmann89/xsd-parser
repositoryhttps://github.com/Bergmann89/xsd-parser
max_upload_size
id1980632
size165,375
Bergmann89 (Bergmann89)

documentation

README

xsd-parser-types

Types and helpers used by the code generated by xsd-parser.

Crates.io License Crates.io Version Crates.io Total Downloads docs.rs Github CI Dependency Status


Overview

xsd-parser-types contains the runtime types that generated code from xsd-parser depends on. It is split out into a separate crate to keep the main code generator light on dependencies and to make it easier for downstream crates to control their own runtime stack.

The crate provides:

  • small utility traits (AsAny, WithNamespace)
  • helper types for XML namespaces and raw byte handling
  • types for unstructured XML content (xs:any, xs:anyAttribute, mixed text)
  • helper traits and adapters for quick-xml-based serialization and deserialization (incl. optional async support)

If you use xsd-parser to generate Rust code, you must also depend on xsd-parser-types in your own crate and enable the correct feature flags. Generated code will reference the runtime types from this crate, and missing features will lead to compile-time errors.

In short: generated code requires xsd-parser-types as a direct dependency with the same feature flags that were active during code generation.

Features

[dependencies]
xsd-parser-types = { version = "0.1", features = [ "xml", "async", "quick-xml" ] }

Available features:

  • xml - enables the unstructured XML types
  • async - adds async deserializer reader support
  • quick-xml - enables serialization/deserialization support

Most users do not need to enable features manually, xsd-parser will automatically do this.

License

This crate is licensed under the MIT License.

Commit count: 196

cargo fmt