[][src]Struct mongodb::options::Collation

#[non_exhaustive]pub struct Collation {
    pub locale: String,
    pub strength: Option<i32>,
    pub case_level: Option<bool>,
    pub case_first: Option<String>,
    pub numeric_ordering: Option<bool>,
    pub alternate: Option<String>,
    pub max_variable: Option<String>,
    pub normalization: Option<bool>,
    pub backwards: Option<bool>,
}

A collation configuration. See the official MongoDB documentation for more information on each of the fields.

Fields (Non-exhaustive)

Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
locale: String

The ICU locale.

See the list of supported languages and locales here.

strength: Option<i32>

The level of comparison to perform. Corresponds to ICU Comparison Levels.

case_level: Option<bool>

Whether to include case comparison when strength is level 1 or 2.

case_first: Option<String>

The sort order of case differences during tertiary level comparisons.

numeric_ordering: Option<bool>

Whether to compare numeric strings as numbers or strings.

alternate: Option<String>

Whether collation should consider whitespace and punctuation as base characters for purposes of comparison.

max_variable: Option<String>

Up to which characters are considered ignorable when alternate is "shifted". Has no effect if alternate is set to "non-ignorable".

normalization: Option<bool>

Whether to check if text require normalization and to perform it.

backwards: Option<bool>

Whether strings with diacritics sort from the back of the string.

Implementations

impl Collation[src]

pub fn builder() -> CollationBuilder<((), (), (), (), (), (), (), (), ())>[src]

Create a builder for building Collation. On the builder, call .locale(...), .strength(...)(optional), .case_level(...)(optional), .case_first(...)(optional), .numeric_ordering(...)(optional), .alternate(...)(optional), .max_variable(...)(optional), .normalization(...)(optional), .backwards(...)(optional) to set the values of the fields (they accept Into values). Finally, call .build() to create the instance of Collation.

Trait Implementations

impl Clone for Collation[src]

impl Debug for Collation[src]

impl Default for Collation[src]

impl<'de> Deserialize<'de> for Collation[src]

impl Serialize for Collation[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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