Module interpreter

Source
Expand description

Schema interpretation logic for transforming parsed XML schemas into semantic type definitions.

This module defines the Interpreter type, which processes raw Schemas loaded by the Parser and converts them into semantic MetaTypes. These types represent meaningful, structured representations such as complex types, enums, references, and attributes.

The interpreter is capable of:

  • registering custom or user-defined types
  • resolving XSD primitive types and typedefs
  • adding default build-in or XML-specific types (e.g., xs:string, xs:anyType)
  • integrating numeric backends (e.g., num::BigInt) for large integers

The resulting MetaTypes structure can then be passed to the generator to generate Rust specific type structures.

§Example

let meta_types = Interpreter::new(&schemas)
    .with_buildin_types()?
    .with_default_typedefs()?
    .finish()?;

Structs§

Interpreter
The Interpreter transforms raw parsed XML schema data into semantically meaningful Rust-compatible type metadata.

Enums§

Error
error raised by the Interpreter.