Trait mule::Typer [−][src]
Infers the type of a raw value
Associated Types
type TypeTag: Display + Hash + Eq + Copy
[src]
Uniquely-identifying tag type for typed values
type TypedValue: Debug + Clone
[src]
The type of a fully-typed single value
type TypedColumn
[src]
Associated Constants
const TYPES: &'static [Self::TypeTag]
[src]
The tags of supported types ordered by parsing priority. The earlier type tags will be attempted first.
Required methods
fn type_value_as(
&self,
value: &RawValue,
tag: Self::TypeTag
) -> ColumnValue<Self::TypedValue>
[src]
&self,
value: &RawValue,
tag: Self::TypeTag
) -> ColumnValue<Self::TypedValue>
Parse a raw value into a specific type.
fn tag_type(&self, value: &Self::TypedValue) -> Self::TypeTag
[src]
Determine a tag value that identifies the type of the value
fn type_column(
&self,
tag: Self::TypeTag,
values: Vec<ColumnValue<Self::TypedValue>>
) -> Self::TypedColumn
[src]
&self,
tag: Self::TypeTag,
values: Vec<ColumnValue<Self::TypedValue>>
) -> Self::TypedColumn
Provided methods
fn type_value(&self, value: &RawValue) -> ColumnValue<Self::TypedValue>
[src]
Implementors
impl Typer for DefaultTyper
[src]
type TypeTag = ValueType
type TypedValue = Value
type TypedColumn = Column
const TYPES: &'static [Self::TypeTag]
[src]
fn type_value_as(
&self,
value: &RawValue,
tag: Self::TypeTag
) -> ColumnValue<Self::TypedValue>
[src]
&self,
value: &RawValue,
tag: Self::TypeTag
) -> ColumnValue<Self::TypedValue>
fn tag_type(&self, value: &Self::TypedValue) -> ValueType
[src]
fn type_column(
&self,
tag: Self::TypeTag,
values: Vec<ColumnValue<Self::TypedValue>>
) -> Self::TypedColumn
[src]
&self,
tag: Self::TypeTag,
values: Vec<ColumnValue<Self::TypedValue>>
) -> Self::TypedColumn