#[cfg(all(
not(test),
any(
target_os = "linux",
target_os = "macos",
target_os = "windows",
target_os = "freebsd"
)
))]
#[global_allocator]
static GLOBAL: mimalloc::MiMalloc = mimalloc::MiMalloc;
#[macro_use]
mod macros;
pub mod cluster;
pub mod cmd;
pub mod connection;
pub mod pipeline;
pub mod protocol;
pub(crate) mod retry_strategies;
pub mod value;
pub use cmd::{Cmd, cmd, pipe};
pub use connection::info::{
ConnectionAddr, ConnectionInfo, IntoConnectionInfo, PubSubChannelOrPattern,
PubSubSubscriptionInfo, PubSubSubscriptionKind, TlsMode, ValkeyConnectionInfo,
};
pub use pubsub::push_manager::PushInfo;
pub use retry_strategies::RetryStrategy;
pub use value::{
Error, ErrorKind, FromValue, InfoDict, ProtocolVersion, PushKind, Result, ToArgs, Value,
from_owned_value, from_value,
};
pub use value::Result as ValkeyResult;
pub mod client;
pub mod compression;
pub(crate) mod ferriskey_client;
#[allow(dead_code)]
pub(crate) mod scripts_container;
pub use ferriskey_client::{
Client, ClientBuilder, CommandBuilder, LazyClient, PipeCmdBuilder, PipeSlot, ReadFrom,
TypedPipeline,
};
pub async fn connect(url: &str) -> Result<Client> {
Client::connect(url).await
}
pub async fn connect_cluster(urls: &[&str]) -> Result<Client> {
Client::connect_cluster(urls).await
}
#[allow(dead_code)]
pub(crate) mod cluster_scan_container;
#[cfg(feature = "iam")]
pub(crate) mod iam;
pub mod pubsub;
pub mod request_type;
#[allow(deprecated)]
mod telemetry_compat;
#[allow(deprecated)]
pub use telemetry_compat::Telemetry;