pub struct CastRecord1ToRecord2<E = MirScalarExpr> {
pub return_ty: SqlScalarType,
pub cast_exprs: Box<[E]>,
}Expand description
Casts between two record types by casting each element of a (“record1”) using
cast_expr and collecting the results into a new record (“record2”).
Fields§
§return_ty: SqlScalarType§cast_exprs: Box<[E]>Implementations§
Source§impl<E> CastRecord1ToRecord2<E>
impl<E> CastRecord1ToRecord2<E>
Sourcepub fn try_map_expr<'a, E2: TryFrom<&'a E>>(
&'a self,
) -> Result<CastRecord1ToRecord2<E2>, E2::Error>
pub fn try_map_expr<'a, E2: TryFrom<&'a E>>( &'a self, ) -> Result<CastRecord1ToRecord2<E2>, E2::Error>
Rebuilds this function with the field cast expressions converted to
E2. Reports the first failing field, not all of them. Callers treat
any failure as a lowering bug.
Sourcepub fn map_expr<'a, E2: From<&'a E>>(&'a self) -> CastRecord1ToRecord2<E2>
pub fn map_expr<'a, E2: From<&'a E>>(&'a self) -> CastRecord1ToRecord2<E2>
Rebuilds this function with the field cast expressions converted to
E2.
Trait Implementations§
Source§impl<E: Clone> Clone for CastRecord1ToRecord2<E>
impl<E: Clone> Clone for CastRecord1ToRecord2<E>
Source§fn clone(&self) -> CastRecord1ToRecord2<E>
fn clone(&self) -> CastRecord1ToRecord2<E>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<E: Debug> Debug for CastRecord1ToRecord2<E>
impl<E: Debug> Debug for CastRecord1ToRecord2<E>
Source§impl<'de, E> Deserialize<'de> for CastRecord1ToRecord2<E>where
E: Deserialize<'de>,
impl<'de, E> Deserialize<'de> for CastRecord1ToRecord2<E>where
E: Deserialize<'de>,
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<E> Display for CastRecord1ToRecord2<E>
impl<E> Display for CastRecord1ToRecord2<E>
impl<E: Eq> Eq for CastRecord1ToRecord2<E>
Source§impl<E> From<CastRecord1ToRecord2<E>> for UnaryFunc<E>
impl<E> From<CastRecord1ToRecord2<E>> for UnaryFunc<E>
Source§fn from(variant: CastRecord1ToRecord2<E>) -> Self
fn from(variant: CastRecord1ToRecord2<E>) -> Self
Source§impl<E> FuncName for CastRecord1ToRecord2<E>
impl<E> FuncName for CastRecord1ToRecord2<E>
Source§impl<E: Hash> Hash for CastRecord1ToRecord2<E>
impl<E: Hash> Hash for CastRecord1ToRecord2<E>
Source§impl<E: Eval> LazyUnaryFunc for CastRecord1ToRecord2<E>
impl<E: Eval> LazyUnaryFunc for CastRecord1ToRecord2<E>
fn eval<'a>( &'a self, datums: &[Datum<'a>], temp_storage: &'a RowArena, a: &'a impl Eval, ) -> Result<Datum<'a>, EvalError>
Source§fn output_sql_type(&self, input_type: SqlColumnType) -> SqlColumnType
fn output_sql_type(&self, input_type: SqlColumnType) -> SqlColumnType
Source§fn propagates_nulls(&self) -> bool
fn propagates_nulls(&self) -> bool
Source§fn introduces_nulls(&self) -> bool
fn introduces_nulls(&self) -> bool
Source§fn preserves_uniqueness(&self) -> bool
fn preserves_uniqueness(&self) -> bool
Source§fn is_monotone(&self) -> bool
fn is_monotone(&self) -> bool
Source§fn is_eliminable_cast(&self) -> bool
fn is_eliminable_cast(&self) -> bool
fn output_type(&self, input_type: ReprColumnType) -> ReprColumnType
Source§fn could_error(&self) -> bool
fn could_error(&self) -> bool
Source§impl<E: Ord> Ord for CastRecord1ToRecord2<E>
impl<E: Ord> Ord for CastRecord1ToRecord2<E>
Source§fn cmp(&self, other: &CastRecord1ToRecord2<E>) -> Ordering
fn cmp(&self, other: &CastRecord1ToRecord2<E>) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl<E: PartialEq> PartialEq for CastRecord1ToRecord2<E>
impl<E: PartialEq> PartialEq for CastRecord1ToRecord2<E>
Source§impl<E: PartialOrd> PartialOrd for CastRecord1ToRecord2<E>
impl<E: PartialOrd> PartialOrd for CastRecord1ToRecord2<E>
Source§impl<E> Serialize for CastRecord1ToRecord2<E>where
E: Serialize,
impl<E> Serialize for CastRecord1ToRecord2<E>where
E: Serialize,
impl<E: PartialEq> StructuralPartialEq for CastRecord1ToRecord2<E>
Auto Trait Implementations§
impl<E> Freeze for CastRecord1ToRecord2<E>
impl<E> RefUnwindSafe for CastRecord1ToRecord2<E>where
E: RefUnwindSafe,
impl<E> Send for CastRecord1ToRecord2<E>where
E: Send,
impl<E> Sync for CastRecord1ToRecord2<E>where
E: Sync,
impl<E> Unpin for CastRecord1ToRecord2<E>
impl<E> UnsafeUnpin for CastRecord1ToRecord2<E>
impl<E> UnwindSafe for CastRecord1ToRecord2<E>where
E: UnwindSafe,
Blanket Implementations§
impl<T> Allocation for T
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<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> Data for T
impl<T> Data for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.impl<T> ExchangeData for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::RequestSource§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
Source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto.Source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto.Source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
Source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign, for types that do not implement AddAssign.