sepserde_derive

Crates.iosepserde_derive
lib.rssepserde_derive
version0.8.1
sourcesrc
created_at2024-03-19 10:10:41.198549
updated_at2024-03-19 10:34:18.388468
descriptionXML Serialization and deserialization proc macros for IEEE 2030.5
homepage
repositoryhttps://github.com/ethanndickson/yaserde
max_upload_size
id1179091
size88,900
Ethan (ethanndickson)

documentation

README

SEPSerde (YaSerde for SEP)

A fork of YaSerde for use in IEEE 2030.5 Client & Servers as part of Smart Energy Protocol 2.0 (SEP 2.0).

Allows for serializing and deserialising all IEEE 2030.5 Resources to and from their specification adhering XML representations.

This library will require a rewrite/refactor at some point in the near future, to remove unused functionality and to minimise code generation for the sake of binary size.

Changes:

  • Enums are serialized as their internal integer representations, as required by the IEEE 2030.5 specification, instead of string representations of their variant.

  • Support for generic recursive types, as required by the IEEE 2030.5 Notificaton resource.

    • YaSerialize trait now implementations must provide the name of their type as a string literal for use in constructing xsi:type attributes.
  • Allowed YaSerialize & YaDeserialize trait objects to be constructed.

  • Imported utility proc macros from xsd-parser-rs to support serdeing of primitive newtypes.

  • Support for serialising & deserialising HexBinary\d+ types as per IEEE 2030.5.

Commit count: 345

cargo fmt