parsers: re-arrange data_forms validation implementation

Jonas SchΓ€fer created

This is more in line with how we handle closely coupled specifications
already. While there are subdirectories for "large" specifications (such
as MUC and PubSub), those only refer to a single XEP document. When
there are multiple separate XEP documents, we have separate modules for
that.

Change summary

parsers/src/data_forms.rs          |  4 ++--
parsers/src/data_forms/mod.rs      | 13 -------------
parsers/src/data_forms_validate.rs |  5 -----
parsers/src/lib.rs                 |  3 +++
4 files changed, 5 insertions(+), 20 deletions(-)

Detailed changes

parsers/src/data_forms/data_form.rs β†’ parsers/src/data_forms.rs πŸ”—

@@ -4,7 +4,7 @@
 // License, v. 2.0. If a copy of the MPL was not distributed with this
 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
-use crate::data_forms::Validate;
+use crate::data_forms_validate::Validate;
 use crate::media_element::MediaElement;
 use crate::ns;
 use crate::Element;
@@ -387,7 +387,7 @@ impl From<DataForm> for Element {
 #[cfg(test)]
 mod tests {
     use super::*;
-    use crate::data_forms::{Datatype, Validate};
+    use crate::data_forms_validate::{Datatype, Validate};
 
     #[cfg(target_pointer_width = "32")]
     #[test]

parsers/src/data_forms/mod.rs πŸ”—

@@ -1,13 +0,0 @@
-// Copyright (c) 2024 xmpp-rs contributors.
-//
-// This Source Code Form is subject to the terms of the Mozilla Public
-// License, v. 2.0. If a copy of the MPL was not distributed with this
-// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-/// XEP-0004: Data Forms
-pub mod data_form;
-
-pub mod validate;
-
-pub use data_form::*;
-pub use validate::*;

parsers/src/data_forms/validate.rs β†’ parsers/src/data_forms_validate.rs πŸ”—

@@ -4,11 +4,6 @@
 // License, v. 2.0. If a copy of the MPL was not distributed with this
 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
-//! XEP-0122: Data Forms Validation
-//!
-//! See [XEP-0122](https://xmpp.org/extensions/xep-0122.html) for the
-//! specification.
-
 use std::fmt::{Display, Formatter};
 use std::str::FromStr;
 

parsers/src/lib.rs πŸ”—

@@ -120,6 +120,9 @@ pub mod caps;
 /// XEP-0118: User Tune
 pub mod tune;
 
+/// XEP-0122: Data Forms Validation
+pub mod data_forms_validate;
+
 ///XEP-0153: vCard-Based Avatars
 pub mod vcard_update;