pub struct RangeFrameOffset {
offset: ScalarImpl,
add_expr: Option<Arc<BoxedExpression>>,
sub_expr: Option<Arc<BoxedExpression>>,
}Expand description
The wrapper type for ScalarImpl range frame offset, containing
two expressions to help adding and subtracting the offset.
Fields§
§offset: ScalarImplThe original offset value.
add_expr: Option<Arc<BoxedExpression>>Built expression for $0 + offset.
sub_expr: Option<Arc<BoxedExpression>>Built expression for $0 - offset.
Implementations§
Source§impl RangeFrameOffset
impl RangeFrameOffset
pub fn new(offset: ScalarImpl) -> Self
fn prepare( &mut self, order_data_type: &DataType, offset_data_type: &DataType, ) -> Result<()>
pub fn new_for_test( offset: ScalarImpl, order_data_type: &DataType, offset_data_type: &DataType, ) -> Self
Methods from Deref<Target = ScalarImpl>§
pub fn get_ident(&self) -> &'static str
Sourcepub fn successor(&self) -> Option<ScalarImpl>
pub fn successor(&self) -> Option<ScalarImpl>
Returns the successor of the current value if it exists.
See also Successor.
The function may return None when:
- The current value is the maximum value of the type.
- The successor value of the type is not well-defined.
Sourcepub fn as_float32(&self) -> &OrderedFloat<f32>
pub fn as_float32(&self) -> &OrderedFloat<f32>
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_float64(&self) -> &OrderedFloat<f64>
pub fn as_float64(&self) -> &OrderedFloat<f64>
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_decimal(&self) -> &Decimal
pub fn as_decimal(&self) -> &Decimal
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_interval(&self) -> &Interval
pub fn as_interval(&self) -> &Interval
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_timestamp(&self) -> &Timestamp
pub fn as_timestamp(&self) -> &Timestamp
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_timestamptz(&self) -> &Timestamptz
pub fn as_timestamptz(&self) -> &Timestamptz
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_struct(&self) -> &StructValue
pub fn as_struct(&self) -> &StructValue
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_vector(&self) -> &VectorInner<Box<[OrderedFloat<f32>]>>
pub fn as_vector(&self) -> &VectorInner<Box<[OrderedFloat<f32>]>>
§Panics
If the scalar is not of the expected type.
Sourcepub fn as_scalar_ref_impl(&self) -> ScalarRefImpl<'_>
pub fn as_scalar_ref_impl(&self) -> ScalarRefImpl<'_>
Converts ScalarImpl to ScalarRefImpl
Sourcepub fn serialize(&self, ser: &mut Serializer<impl BufMut>) -> Result<(), Error>
pub fn serialize(&self, ser: &mut Serializer<impl BufMut>) -> Result<(), Error>
Serialize the scalar into the memcomparable format.
pub fn as_integral(&self) -> i64
Trait Implementations§
Source§impl Clone for RangeFrameOffset
impl Clone for RangeFrameOffset
Source§fn clone(&self) -> RangeFrameOffset
fn clone(&self) -> RangeFrameOffset
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RangeFrameOffset
impl Debug for RangeFrameOffset
Source§impl Deref for RangeFrameOffset
impl Deref for RangeFrameOffset
impl Eq for RangeFrameOffsetwhere
ScalarImpl: PartialEq,
Source§impl Hash for RangeFrameOffsetwhere
ScalarImpl: Hash,
impl Hash for RangeFrameOffsetwhere
ScalarImpl: Hash,
Source§impl PartialEq for RangeFrameOffsetwhere
ScalarImpl: PartialEq,
impl PartialEq for RangeFrameOffsetwhere
ScalarImpl: PartialEq,
Auto Trait Implementations§
impl !RefUnwindSafe for RangeFrameOffset
impl !UnwindSafe for RangeFrameOffset
impl Freeze for RangeFrameOffset
impl Send for RangeFrameOffset
impl Sync for RangeFrameOffset
impl Unpin for RangeFrameOffset
impl UnsafeUnpin for RangeFrameOffset
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
U: Sized,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
U: Sized,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read moreSource§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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<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>
Converts
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>
Converts
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
type Err = Infallible
fn into_result(self) -> Result<T, <T as IntoResult<T>>::Err>
impl<T> Key for T
impl<T> Key for T
§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].impl<T> LruKey for T
impl<T> LruValue for T
impl<T> MaybeSend for Twhere
T: Send,
Source§impl<M> MetricVecRelabelExt for M
impl<M> MetricVecRelabelExt for M
Source§fn relabel(
self,
metric_level: MetricLevel,
relabel_threshold: MetricLevel,
) -> RelabeledMetricVec<M>
fn relabel( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>
Equivalent to
RelabeledMetricVec::with_metric_level.Source§fn relabel_n(
self,
metric_level: MetricLevel,
relabel_threshold: MetricLevel,
relabel_num: usize,
) -> RelabeledMetricVec<M>
fn relabel_n( self, metric_level: MetricLevel, relabel_threshold: MetricLevel, relabel_num: usize, ) -> RelabeledMetricVec<M>
Equivalent to
RelabeledMetricVec::with_metric_level_relabel_n.Source§fn relabel_debug_1(
self,
relabel_threshold: MetricLevel,
) -> RelabeledMetricVec<M>
fn relabel_debug_1( self, relabel_threshold: MetricLevel, ) -> RelabeledMetricVec<M>
Equivalent to
RelabeledMetricVec::with_metric_level_relabel_n with metric_level set to
MetricLevel::Debug and relabel_num set to 1.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> SameOrElseExt for Twhere
T: Eq,
impl<T> SameOrElseExt for Twhere
T: Eq,
Source§fn same_or_else(self, other: T, f: impl FnOnce() -> T) -> T
fn same_or_else(self, other: T, f: impl FnOnce() -> T) -> T
Check if
self and other are equal, if so, return self, otherwise return the result of f().