Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added derive Clone to structs #17

Merged
merged 1 commit into from
Aug 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions crates/derive/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ pub fn xoev_xwasser_code(attr: TokenStream, item: TokenStream) -> TokenStream {
let name = ast.ident;
if let Some(version) = iter.next() {
quote! {
#[derive(Default, Debug, raxb::XmlSerialize, raxb::XmlDeserialize, serde::Serialize, serde::Deserialize)]
#[derive(Clone, Default, Debug, raxb::XmlSerialize, raxb::XmlDeserialize, serde::Serialize, serde::Deserialize)]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -45,7 +45,7 @@ pub fn xoev_xwasser_code(attr: TokenStream, item: TokenStream) -> TokenStream {
}
} else {
quote! {
#[derive(Default, Debug, raxb::XmlSerialize, raxb::XmlDeserialize, serde::Serialize, serde::Deserialize)]
#[derive(Clone, Default, Debug, raxb::XmlSerialize, raxb::XmlDeserialize, serde::Serialize, serde::Deserialize)]
#[cfg_attr(feature = "wasm", derive(tsify::Tsify))]
#[xml(tns(
b"xwas",
Expand Down
6 changes: 3 additions & 3 deletions src/model/codes.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ impl FromStr for ConstStr {
}
}

// #[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
// #[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
// #[cfg_attr(feature = "wasm", derive(Tsify))]
// #[xml(tns(
// b"xwas",
Expand All @@ -42,7 +42,7 @@ impl FromStr for ConstStr {
// list_version_id: String,
// }

#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -59,7 +59,7 @@ pub struct CodeBehoerdenkennungType {
pub list_version_id: String,
}

#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
2 changes: 1 addition & 1 deletion src/model/pruefbericht.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ use super::shared::unterssuchungsstelle::BeauftragteUntersuchungsstelleType;

/// Klasse zur Erfassung bzw. zum Transport der Daten eines Prüfberichts. Prüfberichte
/// werden erstellt, nachdem eine Wasserprobe im Labor analysiert wurde.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
2 changes: 1 addition & 1 deletion src/model/shared/anschrift.rs
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ use super::{
/// erlaubt. Die Anschrift kann auch über eine Subkomponente verfügen, die eine
/// verwaltungspolitische Zuordnung des Ortes erlaubt (Zuordnung zu einer Gemeinde über
/// den AGS, eines Bundesland, etc.).
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
4 changes: 2 additions & 2 deletions src/model/shared/auftraggeber.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ use super::{

/// Informationen zu einem Auftraggeber [Ergänzende Angaben zu den jeweiligen
/// Informationen aus den Registern von Betreibern/Behörden].
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -32,7 +32,7 @@ pub struct AuftraggeberType {

// TODO: implement Box<T>, Arc<T>, Rc<T> for raxb
#[allow(clippy::large_enum_variant)]
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[serde(tag = "t", content = "c")]
#[xml(tns(
Expand Down
8 changes: 4 additions & 4 deletions src/model/shared/behoerde.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ use super::{

/// Klasse für den Transport von Informationen zu einer Zuständigen Behörde [Ergänzende
/// Angaben zu einer im Register Behörden gepflegte Behörde].
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -83,7 +83,7 @@ pub struct ZustaendigeBehoerdeType {
/// auf kommunaler Ebene anhand des amtlichen Gemeindeschlüssels (AGS) der Gemeinde, für
/// die die Behörde zuständig ist, lautet der Präfix "ags:", die Kennung ist dann der AGS
/// der jeweiligen Gemeinde.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -102,7 +102,7 @@ pub struct BehoerdenkennungType {
/// Verwaltungsträger berechtigt ist, mit Außenwirkung Aufgaben öffentlichen Handelns
/// (insbes. der Erlass von Verwaltungsakten und das Schließen öffentlich-rechtlicher
/// Verträge) wahrzunehmen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -145,7 +145,7 @@ pub struct BehoerdeType {

/// Die Komponente "VerwaltungspolitischeKodierung" beinhaltet Information, die eine
/// verwaltungspolitisch eindeutige Zuordnung ermöglichen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
6 changes: 3 additions & 3 deletions src/model/shared/betreiber.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ use super::{
/// Informationen aus den Registern von Betreibern/Behörden].
// TODO: implement Box<T>, Arc<T>, Rc<T> for raxb
#[allow(clippy::large_enum_variant)]
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[serde(tag = "t", content = "c")]
#[xml(tns(
Expand All @@ -40,7 +40,7 @@ pub enum ArtDerPerson {

/// Klasse zum Transport von Informationen zu einem Betreiber einer WVA [Soweit möglich
/// in Register zu pflegen].
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -56,7 +56,7 @@ pub struct BetreiberType {
}

/// Klasse für den Transport von Informationen zu einem Objekt.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
6 changes: 3 additions & 3 deletions src/model/shared/dokument.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ use crate::model::codes::CodeDokumenttypType;
/// Sofern das Dokument signiert wurde findet sich hier eine Referenzliste auf die
/// Signaturen. Diese sind ihrerseits wieder Dokumente, die auch als Dokumentelemente in
/// der Nachricht zu finden sind.
#[derive(Debug, Default, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, Default, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -26,7 +26,7 @@ pub struct SignaturenType {
/// Dokument-Repräsentation, eine Darstellungsform des Dokumentes. Es muss das Element
/// content oder die Elemente externalReferenceIndex und externalReferenceType oder alle
/// 3 vorhanden sein.
#[derive(Debug, Default, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, Default, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -56,7 +56,7 @@ pub struct DokumentRepraesentationType {
/// Eine zum Antrag gehörige Unterlage in verschiedenen Dokumentendarstellungen, z. B.
/// PDF oder eine Datendarstellung. Es muss immer das komplette Dokument mit allen
/// Darstellungen übertragen werden.
#[derive(Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
2 changes: 1 addition & 1 deletion src/model/shared/kommunikation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ use crate::model::codes::CodeKommunikationType;

/// "Kommunikation" fasst Angaben zur Erreichbarkeit über elektronische
/// Kommunikationskanäle (z.B. Telefon, Fax, E-Mail) zusammen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
12 changes: 6 additions & 6 deletions src/model/shared/misc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ use super::zeitraum::ZeitraumType;

/// Unter "Identifikation" werden die Informationen zusammengefasst, die die eindeutige
/// Identifikation von Objekten in einem fachlichen Kontext erlauben.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct IdentifikationType {
#[xml(ns = b"xwas", name = b"id", ty = "child")]
Expand All @@ -30,7 +30,7 @@ pub struct IdentifikationType {
/// Metadaten zu spezifizieren. Es können beliebige XML-Schemata mit unterschiedlichen
/// Namensräumen angegeben werden. Die XML-Schema-Validierung der weiterführenden
/// Metadaten erfolgt innerhalb der XWasser-Nachricht selbst (prozessContents = "lax").
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -45,7 +45,7 @@ pub struct ErweiterungXmlType {

/// Ein Feld ist ein anwendungsspezifisches Metadatum. Die Konfiguration eines Feldes
/// muss zwischen den Kommunikationspartnern abgesprochen sein.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -63,7 +63,7 @@ pub struct ErweiterungFeldType {
}

/// Eine Erweiterungsgruppe fasst mehrere Felder (Metadaten) zu einem Objekt zusammen .
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -89,7 +89,7 @@ pub struct ErweiterungGruppeType {
/// Zwischen Sender und Empfänger wird bilateral die Übermittlung einer strukturierten
/// Information vereinbart, die sich mit den vorhandenen Klassen und Elemente nicht
/// abbilden lässt.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -107,7 +107,7 @@ pub struct ErweiterungType {
}

/// Klasse zur Abbildung von SHAPTH-spezifischen Geokoordinaten.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
pub struct GeokoordinatenShapthType {
#[xml(
Expand Down
8 changes: 4 additions & 4 deletions src/model/shared/organisation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ use super::zeitraum::ZeitraumType;
/// Personen bzw. eine rechtsfähige Personengesellschaft zu einem gemeinsamen Zweck, z.B.
/// im wirtschaftlichen, gemeinnützigen, religiösen, öffentlichen oder politischen
/// Bereich. Behörden werden über eine eigene Kernkomponente "Behoerde" abgebildet.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -56,7 +56,7 @@ pub struct OrganisationType {
}

/// Angaben zum Registereintrag.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -74,7 +74,7 @@ pub struct RegistrierungType {
}

/// "NameOrganisation" fasst die Angaben zum Namen einer Organisation zusammen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -92,7 +92,7 @@ pub struct NameOrganisationType {
/// Die Organisationseinheit fasst Angaben zur Darstellung der internen hierarchischen
/// Organisationsstruktur einer Institution zusammen, z.B. zur Darstellung von
/// Abteilungen oder Referaten.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
26 changes: 13 additions & 13 deletions src/model/shared/person.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ use super::{

/// Der AllgemeineName dient der Darstellung von Vor- und Nachnamen und fasst deren
/// gemeinsame Eigenschaften zusammen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -51,7 +51,7 @@ pub struct AllgemeinerNameType {
/// für die Verwendung einer alternativen Repraesentation ist die Übermittlung von Namen.
/// Der Name "Andrè Müller" würde nach ICAO-Standard, in dem keine Umlaute erlaubt sind,
/// daher alternativ als "ANDRE MUELLER" übertragen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -68,7 +68,7 @@ pub struct AlternativeRepraesentationType {

/// Der Name einer Person ist eine Benennung dieser Person, die dazu dient, diese Person
/// von anderen Personen zu unterscheiden.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -113,7 +113,7 @@ pub struct NameNatuerlichePersonType {
}

/// Die Auskunftssperre beschränkt die Weitergabe von Informationen an Dritte.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -127,7 +127,7 @@ pub struct AuskunftssperreType {
}

/// Unter "Geburt" werden geburtsbezogene Informationen zusammengefasst.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -146,7 +146,7 @@ pub struct GeburtType {
/// Doktorgrade anzugeben, die in Pässe eingetragen werden dürfen. Sind mehrere
/// Doktorgrade anzugeben, so sind sie durch ein Leerzeichen zu trennen. Zulässig sind
/// derzeit: „DR.“, „Dr.“, „DR.HC.“, „Dr.hc.“, „Dr.EH.“ und „Dr.eh.“.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -160,7 +160,7 @@ pub struct DoktorgradType {

/// Mit diesem Datentyp wird ein gesetzlicher Vertreter oder ein Bevollmächtigter einer
/// nichtnatürlichen Person abgebildet.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -174,7 +174,7 @@ pub struct VertreterBevollmaechtigterType {
}

/// Hier werden Angaben zum Familienstand einer natürlichen Person zusammengefasst.
#[derive(Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand All @@ -196,7 +196,7 @@ pub struct FamilienstandType {

/// Ein Ausweis ist eine öffentliche oder private Urkunde, die die Identität des Inhabers
/// schriftlich und offiziell darstellt. Er enthält meist persönliche Daten.
#[derive(Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -224,7 +224,7 @@ pub struct AusweisdokumentType {
/// Selbstverwaltungskörperschaften, sonstige Körperschaften des öffentlichen Rechts)
/// erfasst. Die konkrete Rechtsform der juristischen Person kann mittels einer Codeliste
/// angegeben werden.
#[derive(Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -267,7 +267,7 @@ pub struct JuristischePersonType {
/// rechtsfähig und damit zu einer natürlichen Person (§ 1 BGB). Der Mensch verliert
/// seine Rechtsfähigkeit mit dem Tod. Rechtssubjekte, die keine natürlichen Personen
/// sind, nennt man juristische Personen.
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down Expand Up @@ -306,7 +306,7 @@ pub struct NatuerlichePersonType {

// TODO: implement Box<T>, Arc<T>, Rc<T> for raxb
#[allow(clippy::large_enum_variant)]
#[derive(Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Default, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[serde(tag = "t", content = "c")]
#[xml(tns(
Expand All @@ -326,7 +326,7 @@ pub enum Person {
/// Mit diesem Datentyp wird eine allgemeine Person, natürlich oder nichtnatürlich,
/// spezifiziert
/// dieser Datentype wird bisher nirgends verwendet
#[derive(Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[derive(Clone, Debug, XmlSerialize, XmlDeserialize, Serialize, Deserialize)]
#[cfg_attr(feature = "wasm", derive(Tsify))]
#[xml(tns(
b"xwas",
Expand Down
Loading
Loading