use log::{debug, warn};
use crate::errors::Error;
pub(crate) fn log_cancel_error(what: &str, error: &Error) {
match error {
Error::ConnectionReset | Error::Shutdown => debug!("{what} cancel not sent, session is down: {error}"),
_ => warn!("error cancelling {what}: {error}"),
}
}
pub(crate) mod common;
pub use crate::transport::MAX_BUFFER_LIMIT;
pub(crate) use common::{DecoderContext, StreamDecoder};
pub use common::{Drained, SubscriptionItem};
#[doc(hidden)]
#[cfg(feature = "sync")]
pub mod sync;
#[doc(hidden)]
#[cfg(feature = "async")]
pub mod r#async;
pub(crate) mod notice_stream;
#[cfg(feature = "sync")]
pub use notice_stream::sync_impl::NoticeStreamIter;
#[cfg(feature = "async")]
pub use notice_stream::async_impl::NoticeStream;
#[cfg(all(feature = "sync", not(feature = "async")))]
pub use notice_stream::sync_impl::NoticeStream;
#[cfg(feature = "sync")]
pub use sync::{FilterData, SubscriptionItemIterExt, SubscriptionIter, SubscriptionOwnedIter, SubscriptionTimeoutIter, SubscriptionTryIter};
#[cfg(all(feature = "sync", not(feature = "async")))]
pub use sync::Subscription;
#[cfg(feature = "async")]
pub use r#async::{FilterDataStream, Subscription, SubscriptionItemStreamExt};