#![cfg_attr(not(any(test, doc, feature = "std")), no_std)]
#![cfg_attr(
not(test),
deny(
clippy::indexing_slicing,
clippy::unwrap_used,
clippy::expect_used,
clippy::panic,
)
)]
#![warn(missing_docs)]
#[cfg(feature = "alloc")]
extern crate alloc;
#[cfg(feature = "baked")]
pub mod baked;
pub mod buf;
pub mod constructors;
pub mod dynutil;
#[cfg(feature = "export")]
pub mod export;
#[cfg(feature = "alloc")]
pub mod hello_world;
#[cfg(all(feature = "serde", feature = "alloc"))]
#[doc(hidden)]
pub mod serde_borrow_de_utils;
mod data_provider;
pub use data_provider::{
BoundDataProvider, DataProvider, DataProviderWithMarker, DryDataProvider, DynamicDataProvider,
DynamicDryDataProvider,
};
#[cfg(feature = "alloc")]
pub use data_provider::{IterableDataProvider, IterableDynamicDataProvider};
mod error;
pub use error::{DataError, DataErrorKind, ResultDataError};
mod request;
pub use request::{DataLocale, DataMarkerAttributes, DataRequest, DataRequestMetadata, *};
mod response;
#[doc(hidden)] pub use response::DataPayloadOr;
pub use response::{Cart, DataPayload, DataResponse, DataResponseMetadata};
#[path = "marker.rs"]
mod marker_full;
pub use marker_full::{DataMarker, DataMarkerInfo, DynamicDataMarker};
pub mod marker {
#[doc(inline)]
pub use super::marker_full::impl_data_provider_never_marker;
pub use super::marker_full::{
DataMarkerExt, DataMarkerId, DataMarkerIdHash, ErasedMarker, NeverMarker,
};
}
mod varule_traits;
pub mod ule {
pub use super::varule_traits::MaybeAsVarULE;
#[cfg(feature = "export")]
pub use super::varule_traits::MaybeEncodeAsVarULE;
}
pub mod prelude {
#[doc(no_inline)]
#[cfg(feature = "serde")]
pub use crate::buf::AsDeserializingBufferProvider;
#[doc(no_inline)]
pub use crate::buf::{BufferMarker, BufferProvider};
#[doc(no_inline)]
pub use crate::{
data_marker, data_struct, marker::DataMarkerExt, request::AttributeParseError,
request::DataIdentifierBorrowed, BoundDataProvider, DataError, DataErrorKind, DataLocale,
DataMarker, DataMarkerAttributes, DataMarkerInfo, DataPayload, DataProvider, DataRequest,
DataRequestMetadata, DataResponse, DataResponseMetadata, DryDataProvider,
DynamicDataMarker, DynamicDataProvider, DynamicDryDataProvider, ResultDataError,
};
#[cfg(feature = "alloc")]
#[doc(no_inline)]
pub use crate::{
request::DataIdentifierCow, IterableDataProvider, IterableDynamicDataProvider,
};
#[doc(no_inline)]
pub use icu_locale_core;
#[doc(no_inline)]
pub use yoke;
#[doc(no_inline)]
pub use zerofrom;
}
#[doc(hidden)] pub mod fallback;
#[doc(hidden)] #[cfg(feature = "logging")]
pub use log;
#[doc(hidden)] #[cfg(all(
not(feature = "logging"),
all(debug_assertions, feature = "alloc", not(target_os = "none"))
))]
pub mod log {
extern crate std;
pub use std::eprintln as error;
pub use std::eprintln as warn;
pub use std::eprintln as info;
pub use std::eprintln as debug;
pub use std::eprintln as trace;
}
#[cfg(all(
not(feature = "logging"),
not(all(debug_assertions, feature = "alloc", not(target_os = "none"),))
))]
#[doc(hidden)] pub mod log {
#[macro_export]
macro_rules! _internal_noop_log {
($($t:expr),*) => {};
}
pub use crate::_internal_noop_log as error;
pub use crate::_internal_noop_log as warn;
pub use crate::_internal_noop_log as info;
pub use crate::_internal_noop_log as debug;
pub use crate::_internal_noop_log as trace;
}
#[test]
fn test_logging() {
crate::log::info!("Hello World");
}