pub struct RangeFrameOffset {
offset: ScalarImpl,
add_expr: Option<Arc<dyn SyncExpression>>,
sub_expr: Option<Arc<dyn SyncExpression>>,
}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<dyn SyncExpression>>Built expression for $0 + offset.
sub_expr: Option<Arc<dyn SyncExpression>>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_variant(&self) -> &VariantVal
pub fn as_variant(&self) -> &VariantVal
§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
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
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,
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
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>
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>
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)
&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)
&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,
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,
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
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
§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>
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§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
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>,
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>
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>
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>
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
self and other are equal, if so, return self, otherwise return the result of f().