1#![doc = include_str!("../README.md")]
3#![forbid(unsafe_code)]
4#![deny(missing_docs)]
5
6pub mod client;
10pub mod cmd;
11pub mod commands;
12pub mod config;
13pub mod error;
14pub mod executor;
15pub mod pipeline;
16pub mod pipeline_options;
17pub mod routes;
18pub mod script;
19pub mod telemetry;
20pub mod types;
21pub mod value;
22pub mod write;
23
24#[cfg(feature = "sync")]
25pub mod sync;
26
27#[cfg(test)]
28mod mock_tests;
29
30#[cfg(test)]
31mod parity_tests;
32
33#[cfg(test)]
34mod test_utils;
35
36#[cfg(doctest)]
39#[doc = include_str!("../migration.md")]
40struct MigrationDoctests;
41
42pub type ValkeyResult<T> = std::result::Result<T, GlideError>;
47
48pub type ValkeyFuture<'a, T> = futures::future::BoxFuture<'a, ValkeyResult<T>>;
50
51pub use types::IntegerReplyOrNoOp;
56pub use types::ValueType;
57pub use value::FromValkeyValue;
58pub use value::ValkeyValue;
59pub use value::ValkeyVerbatimFormat;
60pub use write::ToSingleValkeyArg;
61pub use write::ToValkeyArgs;
62pub use write::ValkeyNumericBehavior;
63pub use write::ValkeyWrite;
64
65pub use error::GlideError;
67pub use routes::Route;
68pub use routes::SlotType;
69
70pub use client::ClusterScanCursor;
72pub use client::GlideClient;
73pub use client::GlideClusterClient;
74pub use client::PipelineExt;
75pub use client::PubSubMessage;
76pub use client::PubSubMessageKind;
77
78pub use config::BackoffStrategy;
80pub use config::ClientIdentity;
81pub use config::GlideClientConfiguration;
82pub use config::GlideClusterClientConfiguration;
83pub use config::IamAuthConfig;
84pub use config::NodeAddress;
85pub use config::NodeDiscoveryMode;
86pub use config::PeriodicChecks;
87pub use config::ProtocolVersion;
88pub use config::PubSubChannelMode;
89pub use config::PubSubSubscriptions;
90pub use config::ReadFrom;
91pub use config::ServerCredentials;
92pub use config::ServiceType;
93pub use config::TlsConfig;
94
95pub use cmd::Cmd;
97pub use cmd::cmd;
98pub use commands::core::AsyncCommands;
99pub use commands::core::AsyncTypedCommands;
100pub use commands::prelude::*;
101pub use executor::CustomCommand;
102
103#[cfg(feature = "sync")]
104pub use commands::core::Commands;
105
106#[cfg(feature = "sync")]
107pub use commands::core::TypedCommands;
108
109pub use commands::options::ClientPauseMode;
111pub use commands::options::CopyOptions;
112pub use commands::options::Direction;
113pub use commands::options::ExistenceCheck;
114pub use commands::options::ExpireOption;
115pub use commands::options::Expiry;
116pub use commands::options::FieldExistenceCheck;
117pub use commands::options::FlushAllOptions;
118pub use commands::options::FlushDbOptions;
119pub use commands::options::FunctionFlushOptions;
120pub use commands::options::FunctionRestorePolicy;
121pub use commands::options::HashFieldExpirationOptions;
122pub use commands::options::Limit;
123pub use commands::options::LposOptions;
124pub use commands::options::MigrateOptions;
125pub use commands::options::ObjectType;
126pub use commands::options::OrderBy;
127pub use commands::options::RestoreOptions;
128pub use commands::options::SetExpiry;
129pub use commands::options::SetOptions;
130pub use commands::options::ValueComparison;
131
132pub use commands::bitmap::BitEncoding;
134pub use commands::bitmap::BitFieldOffset;
135pub use commands::bitmap::BitFieldSubcommand;
136pub use commands::bitmap::BitOverflow;
137pub use commands::bitmap::BitmapIndexType;
138pub use commands::geo::GeoCoord;
139pub use commands::geo::GeoSearchOptions;
140pub use commands::geo::GeoSearchResult;
141pub use commands::geo::GeoSearchShape;
142pub use commands::geo::GeoSearchStoreOptions;
143pub use commands::geo::GeoUnit;
144pub use commands::sorted_set::AggregationType;
145pub use commands::sorted_set::LexBound;
146pub use commands::sorted_set::ScoreBound;
147pub use commands::stream::StreamAddOptions;
148pub use commands::stream::StreamAutoClaimOptions;
149pub use commands::stream::StreamAutoClaimReply;
150pub use commands::stream::StreamClaimOptions;
151pub use commands::stream::StreamClaimReply;
152pub use commands::stream::StreamEntry;
153pub use commands::stream::StreamGroupCreateOptions;
154pub use commands::stream::StreamId;
155pub use commands::stream::StreamInfoConsumer;
156pub use commands::stream::StreamInfoConsumersReply;
157pub use commands::stream::StreamInfoGroup;
158pub use commands::stream::StreamInfoGroupsReply;
159pub use commands::stream::StreamInfoStreamReply;
160pub use commands::stream::StreamKey;
161pub use commands::stream::StreamMaxlen;
162pub use commands::stream::StreamPendingCountReply;
163pub use commands::stream::StreamPendingData;
164pub use commands::stream::StreamPendingId;
165pub use commands::stream::StreamPendingReply;
166pub use commands::stream::StreamRangeReply;
167pub use commands::stream::StreamReadGroupOptions;
168pub use commands::stream::StreamReadOptions;
169pub use commands::stream::StreamReadReply;
170pub use commands::stream::StreamTrimOptions;
171pub use commands::stream::StreamTrimStrategy;
172pub use commands::stream::StreamTrimmingMode;
173pub use commands::stream::XPendingEntry;
174
175pub use commands::scan::ScanIter;
177
178#[cfg(feature = "sync")]
179pub use commands::scan::SyncScanIter;
180
181pub use script::Script;
183pub use script::ScriptInvocation;
184
185pub use pipeline::Pipeline;
187pub use pipeline::pipe;
188pub use pipeline_options::PipelineOptions;
189
190pub use bytes::Bytes;
192pub use num_bigint::BigInt;