RadiusOptions in redis::geo - Rust
Description: Options for the GEORADIUS and GEORADIUSBYMEMBER commands

Skip to main content

## RadiusOptions

# Struct RadiusOptions

Source

    pub struct RadiusOptions { /* private fields */ }

Available on crate feature `geospatial` only.
Expand description

Options for the GEORADIUS and GEORADIUSBYMEMBER commands

## §Example

    use redis::{Commands, RedisResult};
    use redis::geo::{RadiusSearchResult, RadiusOptions, RadiusOrder, Unit};
    fn nearest_in_radius(
        con: &mut redis::Connection,
        key: &str,
        longitude: f64,
        latitude: f64,
        meters: f64,
        limit: usize,
    ) -> RedisResult<Vec<RadiusSearchResult>> {
        let opts = RadiusOptions::default()
            .order(RadiusOrder::Asc)
            .limit(limit);
        con.geo_radius(key, longitude, latitude, meters, Unit::Meters, opts)
    }

## Implementations§

Source§

### impl RadiusOptions

Source

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

Limit the results to the first N matching items.

Source

#### pub fn with_dist(self) -> Self

Return the distance of the returned items from the specified center. The distance is returned in the same unit as the unit specified as the radius argument of the command.

Source

#### pub fn with_coord(self) -> Self

Return the `longitude, latitude` coordinates of the matching items.

Source

#### pub fn order(self, o: RadiusOrder) -> Self

Sort the returned items

Source

#### pub fn store<K: ToRedisArgs>(self, key: K) -> Self

Store the results in a sorted set at `key`, instead of returning them.

This feature can’t be used with any `with_*` method.

Source

#### pub fn store_dist<K: ToRedisArgs>(self, key: K) -> Self

Store the results in a sorted set at `key`, with the distance from the center as its score. This feature can’t be used with any `with_*` method.

## Trait Implementations§

Source§

### impl Default for RadiusOptions

Source§

#### fn default() -> RadiusOptions

Returns the “default value” for a type. Read more
Source§

### impl ToRedisArgs for RadiusOptions

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 num_of_args(&self) -> usize

Returns the number of arguments this value will generate. 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`).

## Auto Trait Implementations§

§

### impl Freeze for RadiusOptions

§

### impl RefUnwindSafe for RadiusOptions

§

### impl Send for RadiusOptions

§

### impl Sync for RadiusOptions

§

### impl Unpin for RadiusOptions

§

### impl UnwindSafe for RadiusOptions

## 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.

§

### impl<T> Instrument for T

§

#### fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [`Span`], returning an `Instrumented` wrapper. Read more
§

#### fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current `Span`, returning an `Instrumented` wrapper. Read more
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.

§

### impl<T> PolicyExt for T
where T: ?Sized,

§

#### fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new `Policy` that returns [`Action::Follow`] only if `self` and `other` return `Action::Follow`. Read more
§

#### fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new `Policy` that returns [`Action::Follow`] if either `self` or `other` returns `Action::Follow`. Read more
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.
§

### impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

#### fn vzip(self) -> V

§

### impl<T> WithSubscriber for T

§

#### fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided `Subscriber` to this type, returning a [`WithDispatch`] wrapper. Read more
§

#### fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default `Subscriber` to this type, returning a [`WithDispatch`] wrapper. Read more
§

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

§

### impl<T> MaybeSendSync for T