pub struct ExaTypeInfo { /* private fields */ }Expand description
Information about an Exasol data type and implementor of TypeInfo.
Trait Implementations§
Source§impl Clone for ExaTypeInfo
impl Clone for ExaTypeInfo
Source§fn clone(&self) -> ExaTypeInfo
fn clone(&self) -> ExaTypeInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ExaTypeInfo
impl Debug for ExaTypeInfo
Source§impl<'de> Deserialize<'de> for ExaTypeInfo
impl<'de> Deserialize<'de> for ExaTypeInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for ExaTypeInfo
impl Display for ExaTypeInfo
Source§impl PartialEq for ExaTypeInfo
impl PartialEq for ExaTypeInfo
Source§impl Serialize for ExaTypeInfo
Manually implemented because we only want to serialize the data_type field while also
flattening the structure.
impl Serialize for ExaTypeInfo
Manually implemented because we only want to serialize the data_type field while also
flattening the structure.
Source§impl TypeInfo for ExaTypeInfo
impl TypeInfo for ExaTypeInfo
Source§fn name(&self) -> &str
fn name(&self) -> &str
We’re going against sqlx here, but knowing the full data type definition is actually very
helpful when displaying error messages, so… ¯_(ツ)_/¯. This is also due to Exasol’s
limited number of data types. How would it look saying that a DECIMAL column does not fit
in some other DECIMAL data type?
In fact, error messages seem to be the only place where this is being used, particularly when trying to decode a value but the data type provided by the database does not match/fit inside the Rust data type.
Source§fn type_compatible(&self, other: &Self) -> boolwhere
Self: Sized,
fn type_compatible(&self, other: &Self) -> boolwhere
Self: Sized,
Checks compatibility with other data types.
Returns true if this ExaTypeInfo instance is able to accommodate the other instance.
fn is_null(&self) -> bool
impl Copy for ExaTypeInfo
Auto Trait Implementations§
impl Freeze for ExaTypeInfo
impl RefUnwindSafe for ExaTypeInfo
impl Send for ExaTypeInfo
impl Sync for ExaTypeInfo
impl Unpin for ExaTypeInfo
impl UnwindSafe for ExaTypeInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more