vast4_rs/
lib.rs

1#![allow(deprecated)]
2#![allow(clippy::deprecated_semver, clippy::needless_late_init)]
3
4//! An implementation of [`VAST 4.2 FINAL`].
5//!
6//! [`VAST 4.2 FINAL`]: https://iabtechlab.com/wp-content/uploads/2019/06/VAST_4.2_final_june26.pdf
7
8mod macros;
9
10// functions
11
12pub fn to_string<T: hard_xml::XmlWrite>(value: &T) -> hard_xml::XmlResult<String> {
13    T::to_string(value)
14}
15
16pub fn from_str<'a, T: hard_xml::XmlRead<'a>>(s: &'a str) -> hard_xml::XmlResult<T> {
17    T::from_str(s)
18}
19
20// common types
21mod duration;
22pub use duration::Duration;
23
24mod unknown;
25pub use unknown::UnknownEvent;
26
27mod error;
28pub use error::*;
29
30// 3.2
31mod vast;
32pub use vast::*;
33
34// 3.3
35mod ad;
36pub use ad::*;
37
38// 3.4
39mod in_line;
40pub use in_line::*;
41
42// 3.5
43mod viewable;
44pub use viewable::*;
45
46// 3,6, 3.7
47mod creative;
48pub use creative::*;
49
50// 3.8
51mod linear;
52pub use linear::*;
53
54// 3.9
55mod media_file;
56pub use media_file::*;
57
58// 3.10
59mod click;
60pub use click::*;
61
62// 3.11
63mod icon;
64pub use icon::*;
65
66// 3.12
67mod non_linear;
68pub use non_linear::*;
69
70// 3.13
71mod companion_ad;
72pub use companion_ad::*;
73
74// 3.14
75mod tracking;
76pub use tracking::*;
77
78// 3.15
79mod creative_resource;
80pub use creative_resource::*;
81
82// 3.16, 3.17
83mod verification;
84pub use verification::*;
85
86// 3.18
87mod extension;
88pub use extension::*;
89
90// 3.19
91mod wrapper;
92pub use wrapper::*;