#![deny(warnings)] #![deny(rustdoc::broken_intra_doc_links)]
pub mod dictionary;
#[cfg(feature = "enable_unstable_features_that_may_break_with_minor_version_bumps")]
pub mod stream;
#[cfg(not(feature = "enable_unstable_features_that_may_break_with_minor_version_bumps"))]
mod stream;
#[cfg(feature = "serde")]
mod data;
mod date;
mod error;
mod integer;
mod uid;
mod value;
#[cfg(feature = "serde")]
pub use data::Data;
pub use date::{Date, InvalidXmlDate};
pub use dictionary::Dictionary;
pub use error::Error;
pub use integer::Integer;
pub use stream::XmlWriteOptions;
pub use uid::Uid;
pub use value::Value;
#[cfg(feature = "serde")]
#[macro_use]
extern crate serde;
#[cfg(feature = "serde")]
mod de;
#[cfg(feature = "serde")]
mod ser;
#[cfg(all(
feature = "serde",
any(
test,
feature = "enable_unstable_features_that_may_break_with_minor_version_bumps"
)
))]
pub use self::{de::Deserializer, ser::Serializer};
#[cfg(feature = "serde")]
pub use self::{
de::{from_bytes, from_file, from_reader, from_reader_ascii, from_reader_xml, from_value},
ser::{
to_file_binary, to_file_xml, to_value, to_writer_binary, to_writer_xml,
to_writer_xml_with_options,
},
};
#[cfg(all(test, feature = "serde"))]
#[macro_use]
extern crate serde_derive;
#[cfg(all(test, feature = "serde"))]
mod serde_tests;
fn u64_to_usize(len_u64: u64) -> Option<usize> {
usize::try_from(len_u64).ok()
}