Skip to main content

CollationFunction

Trait CollationFunction 

Source
pub trait CollationFunction: Send + Sync {
    // Required methods
    fn name(&self) -> &str;
    fn compare(&self, left: &[u8], right: &[u8]) -> Ordering;
}
Expand description

A collation comparator.

Implementations define total ordering over UTF-8 byte strings.

Built-in collations: BinaryCollation (memcmp), NoCaseCollation (ASCII case-insensitive), RtrimCollation (trailing-space-insensitive).

Required Methods§

Source

fn name(&self) -> &str

Collation name (for COLLATE name).

Source

fn compare(&self, left: &[u8], right: &[u8]) -> Ordering

Compare two UTF-8 byte slices.

Must be deterministic, antisymmetric, and transitive.

Implementors§