Trait mentat_core::SQLValueTypeSet [] [src]

pub trait SQLValueTypeSet {
    fn value_type_tags(&self) -> BTreeSet<ValueTypeTag>;
fn has_unique_type_tag(&self) -> bool;
fn unique_type_tag(&self) -> Option<ValueTypeTag>; }

We have an enum of types, ValueType. It can be collected into a set, ValueTypeSet. Each type is associated with a type tag, which is how a type is represented in, e.g., SQL storage. Types can share type tags, because backing SQL storage is able to differentiate between some types (e.g., longs and doubles), and so distinct tags aren't necessary. That association is defined by SQLValueType. That trait similarly extends to ValueTypeSet, which maps a collection of types into a collection of tags.

Required Methods

Implementors