Enum StreamTrimStrategy

Source
pub enum StreamTrimStrategy {
    MaxLen(StreamTrimmingMode, usize, Option<usize>),
    MinId(StreamTrimmingMode, String, Option<usize>),
}
Expand description

Utility enum for passing <MAXLEN|MINID> [=|~] threshold [LIMIT count] arguments into StreamCommands. The enum values the trimming mode (=|~), the threshold, and the optional limit

Variants§

§

MaxLen(StreamTrimmingMode, usize, Option<usize>)

Evicts entries as long as the streams length exceeds threshold. With an optional limit.

§

MinId(StreamTrimmingMode, String, Option<usize>)

Evicts entries with IDs lower than threshold, where threshold is a stream ID With an optional limit.

Implementations§

Source§

impl StreamTrimStrategy

Source

pub fn maxlen(trim: StreamTrimmingMode, max_entries: usize) -> Self

Define a MAXLEN trim strategy with the given maximum number of entries

Source

pub fn minid(trim: StreamTrimmingMode, stream_id: impl Into<String>) -> Self

Defines a MINID trim strategy with the given minimum stream ID

Source

pub fn limit(self, limit: usize) -> Self

Set a limit to the number of records to trim in a single operation

Trait Implementations§

Source§

impl Debug for StreamTrimStrategy

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl ToRedisArgs for StreamTrimStrategy

Source§

fn write_redis_args<W>(&self, out: &mut W)
where W: ?Sized + RedisWrite,

This writes the value into a vector of bytes. Each item is a single argument. Most items generate a single item. Read more
Source§

fn to_redis_args(&self) -> Vec<Vec<u8>>

This converts the value into a vector of bytes. Each item is a single argument. Most items generate a vector of a single item. Read more
Source§

fn describe_numeric_behavior(&self) -> NumericBehavior

Returns an information about the contained value with regards to it’s numeric behavior in a redis context. This is used in some high level concepts to switch between different implementations of redis functions (for instance INCR vs INCRBYFLOAT).
Source§

fn num_of_args(&self) -> usize

Returns the number of arguments this value will generate. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T