pub struct StreamBuilder<'m, A = AlwaysMatch>(/* private fields */);
Expand description

A builder for constructing range queries on streams.

Once all bounds are set, one should call into_stream to get a Stream.

Bounds are not additive. That is, if ge is called twice on the same builder, then the second setting wins.

The A type parameter corresponds to an optional automaton to filter the stream. By default, no filtering is done.

The 'm lifetime parameter refers to the lifetime of the underlying map.

Implementations§

source§

impl<'m, A: Automaton> StreamBuilder<'m, A>

source

pub fn ge<T: AsRef<[u8]>>(self, bound: T) -> Self

Specify a greater-than-or-equal-to bound.

source

pub fn gt<T: AsRef<[u8]>>(self, bound: T) -> Self

Specify a greater-than bound.

source

pub fn le<T: AsRef<[u8]>>(self, bound: T) -> Self

Specify a less-than-or-equal-to bound.

source

pub fn lt<T: AsRef<[u8]>>(self, bound: T) -> Self

Specify a less-than bound.

source

pub fn backward(self) -> Self

Make it iterate backwards.

source

pub fn with_state(self) -> StreamWithStateBuilder<'m, A>

Return this builder and gives the automaton states along with the results.

Trait Implementations§

source§

impl<'m, 'a, A: Automaton> IntoStreamer<'a> for StreamBuilder<'m, A>

§

type Item = (&'a [u8], u64)

The type of the item emitted by the stream.
§

type Into = Stream<'m, A>

The type of the stream to be constructed.
source§

fn into_stream(self) -> Self::Into

Construct a stream from Self.

Auto Trait Implementations§

§

impl<'m, A> RefUnwindSafe for StreamBuilder<'m, A>where A: RefUnwindSafe,

§

impl<'m, A> Send for StreamBuilder<'m, A>where A: Send,

§

impl<'m, A> Sync for StreamBuilder<'m, A>where A: Sync,

§

impl<'m, A> Unpin for StreamBuilder<'m, A>where A: Unpin,

§

impl<'m, A> UnwindSafe for StreamBuilder<'m, A>where A: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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 Twhere U: Into<T>,

§

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 Twhere U: TryFrom<T>,

§

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.