Struct tidb_query_aggr::impl_max_min::AggFnStateExtremumForEnum [−][src]
Fields
extremum: Option<Enum>
_phantom: PhantomData<E>
Implementations
impl<E> AggFnStateExtremumForEnum<E> where
E: Extremum,
VectorValue: VectorValueExt<Enum>,
[src]
E: Extremum,
VectorValue: VectorValueExt<Enum>,
pub fn new() -> Self
[src]
fn update_concrete(
&mut self,
_ctx: &mut EvalContext,
value: Option<EnumRef<'_>>
) -> Result<()>
[src]
&mut self,
_ctx: &mut EvalContext,
value: Option<EnumRef<'_>>
) -> Result<()>
Notes
For MAX(), MySQL currently compares ENUM and SET columns by their string value rather than by the string’s relative position in the set. This differs from how ORDER BY compares them.
ref: https://dev.mysql.com/doc/refman/5.7/en/aggregate-functions.html#function_max
Trait Implementations
impl<E> ConcreteAggrFunctionState for AggFnStateExtremumForEnum<E> where
E: Extremum,
VectorValue: VectorValueExt<Enum>,
[src]
E: Extremum,
VectorValue: VectorValueExt<Enum>,
type ParameterType = EnumRef<'static>
unsafe fn update_concrete_unsafe(
&mut self,
ctx: &mut EvalContext,
value: Option<Self::ParameterType>
) -> Result<()>
[src]
&mut self,
ctx: &mut EvalContext,
value: Option<Self::ParameterType>
) -> Result<()>
fn push_result(
&self,
_ctx: &mut EvalContext,
target: &mut [VectorValue]
) -> Result<()>
[src]
&self,
_ctx: &mut EvalContext,
target: &mut [VectorValue]
) -> Result<()>
impl<E: Debug> Debug for AggFnStateExtremumForEnum<E> where
E: Extremum,
VectorValue: VectorValueExt<Enum>,
[src]
E: Extremum,
VectorValue: VectorValueExt<Enum>,
Auto Trait Implementations
impl<E> RefUnwindSafe for AggFnStateExtremumForEnum<E> where
E: RefUnwindSafe,
E: RefUnwindSafe,
impl<E> Send for AggFnStateExtremumForEnum<E>
impl<E> Sync for AggFnStateExtremumForEnum<E>
impl<E> Unpin for AggFnStateExtremumForEnum<E> where
E: Unpin,
E: Unpin,
impl<E> UnwindSafe for AggFnStateExtremumForEnum<E> where
E: UnwindSafe,
E: UnwindSafe,
Blanket Implementations
impl<F> AggrFunctionState for F where
F: ConcreteAggrFunctionState,
[src]
F: ConcreteAggrFunctionState,
pub fn push_result(
&Self,
&mut EvalContext,
&mut [VectorValue]
) -> Result<(), Error>
[src]
&Self,
&mut EvalContext,
&mut [VectorValue]
) -> Result<(), Error>
impl<T, State> AggrFunctionStateUpdatePartial<T> for State where
T: EvaluableRef<'static>,
State: ConcreteAggrFunctionState,
[src]
T: EvaluableRef<'static>,
State: ConcreteAggrFunctionState,
pub unsafe default fn update_unsafe(
&mut Self,
&mut EvalContext,
Option<T>
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>
) -> Result<(), Error>
pub unsafe default fn update_repeat_unsafe(
&mut Self,
&mut EvalContext,
Option<T>,
usize
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>,
usize
) -> Result<(), Error>
pub unsafe default fn update_vector_unsafe(
&mut Self,
&mut EvalContext,
Option<T>,
<T as EvaluableRef<'static>>::ChunkedType,
&[usize]
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>,
<T as EvaluableRef<'static>>::ChunkedType,
&[usize]
) -> Result<(), Error>
impl<T, State> AggrFunctionStateUpdatePartial<T> for State where
T: EvaluableRef<'static>,
State: ConcreteAggrFunctionState<ParameterType = T>,
[src]
T: EvaluableRef<'static>,
State: ConcreteAggrFunctionState<ParameterType = T>,
pub unsafe fn update_unsafe(
&mut Self,
&mut EvalContext,
Option<T>
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>
) -> Result<(), Error>
pub unsafe fn update_repeat_unsafe(
&mut Self,
&mut EvalContext,
Option<T>,
usize
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>,
usize
) -> Result<(), Error>
pub unsafe fn update_vector_unsafe(
&mut Self,
&mut EvalContext,
Option<T>,
<T as EvaluableRef<'static>>::ChunkedType,
&[usize]
) -> Result<(), Error>
[src]
&mut Self,
&mut EvalContext,
Option<T>,
<T as EvaluableRef<'static>>::ChunkedType,
&[usize]
) -> Result<(), Error>
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<V, W> ConvertFrom<W> for V where
W: ConvertTo<V>,
[src]
W: ConvertTo<V>,
pub fn convert_from(ctx: &mut EvalContext, from: W) -> Result<V, Error>
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
[src]
pub const ALIGN: usize
[src]
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
[src]
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
[src]
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
[src]
pub unsafe fn drop(ptr: usize)
[src]
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src]
V: MultiLane<T>,