Closed victor-soloviev closed 4 years ago
For the following type from soap-envelope.xsd
soap-envelope.xsd
<xs:simpleType name="faultcodeEnum"> <xs:restriction base="xs:QName"> <xs:enumeration value="tns:DataEncodingUnknown"/> <xs:enumeration value="tns:MustUnderstand"/> <xs:enumeration value="tns:Receiver"/> <xs:enumeration value="tns:Sender"/> <xs:enumeration value="tns:VersionMismatch"/> </xs:restriction> </xs:simpleType>
this generated code is desired:
#[derive(PartialEq, Debug, YaSerialize, YaDeserialize)] pub enum FaultcodeEnum { #[yaserde(rename = "tns:DataEncodingUnknown")] DataEncodingUnknown, #[yaserde(rename = "tns:MustUnderstand")] MustUnderstand, #[yaserde(rename = "tns:Receiver")] Receiver, #[yaserde(rename = "tns:Sender")] Sender, #[yaserde(rename = "tns:VersionMismatch")] VersionMismatch, __Unknown__(String), }
but the following is generated:
#[derive(Default, PartialEq, Debug, UtilsTupleIo, UtilsDefaultSerde)] pub struct FaultcodeEnum(pub String);
After further exploration, experimentation, and discussion, we decided to generate String instead, which is already achieved. Generated code in onvif-rs repo was updated.
For the following type from
soap-envelope.xsd
this generated code is desired:
but the following is generated: