1#![cfg_attr(feature = "dox", feature(doc_cfg))]
2#![doc = include_str!("../README.md")]
3
4#![warn(clippy::all, clippy::pedantic, clippy::cargo, missing_docs)]
5#![allow(
6 clippy::doc_markdown,
7 clippy::module_name_repetitions,
8 clippy::wildcard_imports,
9 clippy::missing_const_for_fn,
10 clippy::wrong_self_convention,
11 clippy::redundant_feature_names
12)]
13
14mod address;
15pub mod contact_information;
16pub mod contact_platform;
17pub mod date_time;
18mod name;
19mod org;
20mod uri;
21mod gender;
22
23#[cfg(feature = "lazy_static")]
24#[macro_use]
25extern crate lazy_static;
26#[cfg(feature = "thiserror")]
27#[macro_use]
28extern crate thiserror;
29
30#[cfg_attr(feature = "diesel-derive-enum", macro_use)]
31#[cfg(feature = "diesel-derive-enum")]
32extern crate diesel_derive_enum;
33
34#[cfg(feature = "diesel")]
35#[macro_use]
36extern crate diesel;
37
38#[cfg(feature = "diesel_migrations")]
39#[macro_use]
40extern crate diesel_migrations;
41
42#[cfg(feature = "diesel_support")]
43#[cfg_attr(feature = "dox", doc(cfg(feature = "diesel_support")))]
44pub mod schema;
45
46#[cfg(feature = "sql")]
47#[cfg_attr(feature = "dox", doc(cfg(feature = "sql")))]
48pub mod sql;
49
50#[cfg(feature = "sql")]
51pub(crate) use sql::SqlConversionError;
52
53#[cfg(feature = "read_write")]
54#[cfg_attr(feature = "dox", doc(cfg(feature = "read_write")))]
55pub mod read_write;
56
57#[cfg(feature = "read_write")]
58use crate::read_write::component::Component;
59#[cfg(feature = "read_write")]
60use crate::read_write::error::FromComponentError;
61
62pub use {
63 address::{Address, Geo},
64 contact_information::{ContactInformation, Type},
65 contact_platform::ContactPlatform,
66 date_time::DateTime,
67 name::Name,
68 org::Org,
69 uri::Uri,
70 gender::{Gender, Sex}
71};
72
73mod contact;
74pub use contact::Contact;