arrow::datatypes

Struct IntervalDayTime

#[repr(C)]
pub struct IntervalDayTime { pub days: i32, pub milliseconds: i32, }
Expand description

Value of an IntervalDayTime array

§Representation

This type is stored as a single 64 bit integer, interpreted as two i32 fields:

  1. the number of elapsed days
  2. The number of milliseconds (no leap seconds),
┌──────────────┬──────────────┐
│     Days     │ Milliseconds │
│  (32 bits)   │  (32 bits)   │
└──────────────┴──────────────┘
0              31            63 bit offset

Please see the Arrow Spec for more details

§Note on Comparing and Ordering for Calendar Types

Values of IntervalDayTime are compared using their binary representation, which can lead to surprising results. Please see the description of ordering on IntervalMonthDayNano for more details

Fields§

§days: i32

Number of days

§milliseconds: i32

Number of milliseconds

Implementations§

§

impl IntervalDayTime

pub const ZERO: IntervalDayTime = _

The additive identity i.e. 0.

pub const ONE: IntervalDayTime = _

The multiplicative identity, i.e. 1.

pub const MINUS_ONE: IntervalDayTime = _

The multiplicative inverse, i.e. -1.

pub const MAX: IntervalDayTime = _

The maximum value that can be represented

pub const MIN: IntervalDayTime = _

The minimum value that can be represented

pub const fn new(days: i32, milliseconds: i32) -> IntervalDayTime

Create a new IntervalDayTime

pub fn wrapping_abs(self) -> IntervalDayTime

Computes the absolute value

pub fn checked_abs(self) -> Option<IntervalDayTime>

Computes the absolute value

pub fn wrapping_neg(self) -> IntervalDayTime

Negates the value

pub fn checked_neg(self) -> Option<IntervalDayTime>

Negates the value

pub fn wrapping_add(self, other: IntervalDayTime) -> IntervalDayTime

Performs wrapping addition

pub fn checked_add(self, other: IntervalDayTime) -> Option<IntervalDayTime>

Performs checked addition

pub fn wrapping_sub(self, other: IntervalDayTime) -> IntervalDayTime

Performs wrapping subtraction

pub fn checked_sub(self, other: IntervalDayTime) -> Option<IntervalDayTime>

Performs checked subtraction

pub fn wrapping_mul(self, other: IntervalDayTime) -> IntervalDayTime

Performs wrapping multiplication

pub fn checked_mul(self, other: IntervalDayTime) -> Option<IntervalDayTime>

Performs checked multiplication

pub fn wrapping_div(self, other: IntervalDayTime) -> IntervalDayTime

Performs wrapping division

pub fn checked_div(self, other: IntervalDayTime) -> Option<IntervalDayTime>

Performs checked division

pub fn wrapping_rem(self, other: IntervalDayTime) -> IntervalDayTime

Performs wrapping remainder

pub fn checked_rem(self, other: IntervalDayTime) -> Option<IntervalDayTime>

Performs checked remainder

pub fn wrapping_pow(self, exp: u32) -> IntervalDayTime

Performs wrapping exponentiation

pub fn checked_pow(self, exp: u32) -> Option<IntervalDayTime>

Performs checked exponentiation

Trait Implementations§

§

impl<'a, 'b> Add<&'b IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the + operator.
§

fn add( self, rhs: &'b IntervalDayTime, ) -> <&'a IntervalDayTime as Add<&'b IntervalDayTime>>::Output

Performs the + operation. Read more
§

impl<'a> Add<&'a IntervalDayTime> for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the + operator.
§

fn add( self, rhs: &'a IntervalDayTime, ) -> <IntervalDayTime as Add<&'a IntervalDayTime>>::Output

Performs the + operation. Read more
§

impl<'a> Add<IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the + operator.
§

fn add( self, rhs: IntervalDayTime, ) -> <&'a IntervalDayTime as Add<IntervalDayTime>>::Output

Performs the + operation. Read more
§

impl Add for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the + operator.
§

fn add(self, rhs: IntervalDayTime) -> <IntervalDayTime as Add>::Output

Performs the + operation. Read more
§

impl AddAssign for IntervalDayTime

§

fn add_assign(&mut self, rhs: IntervalDayTime)

Performs the += operation. Read more
§

impl ArrowNativeType for IntervalDayTime

§

fn from_usize(_: usize) -> Option<IntervalDayTime>

Convert native integer type from usize Read more
§

fn as_usize(self) -> usize

Convert to usize according to the as operator
§

fn usize_as(i: usize) -> IntervalDayTime

Convert from usize according to the as operator
§

fn to_usize(self) -> Option<usize>

Convert native type to usize. Read more
§

fn to_isize(self) -> Option<isize>

Convert native type to isize. Read more
§

fn to_i64(self) -> Option<i64>

Convert native type to i64. Read more
§

fn get_byte_width() -> usize

Returns the byte width of this native type.
§

impl ArrowNativeTypeOp for IntervalDayTime

§

const ZERO: IntervalDayTime = IntervalDayTime::ZERO

The additive identity
§

const ONE: IntervalDayTime = IntervalDayTime::ONE

The multiplicative identity
§

const MIN_TOTAL_ORDER: IntervalDayTime = IntervalDayTime::MIN

The minimum value and identity for the max aggregation. Note that the aggregation uses the total order predicate for floating point values, which means that this value is a negative NaN.
§

const MAX_TOTAL_ORDER: IntervalDayTime = IntervalDayTime::MAX

The maximum value and identity for the min aggregation. Note that the aggregation uses the total order predicate for floating point values, which means that this value is a positive NaN.
§

fn add_checked( self, rhs: IntervalDayTime, ) -> Result<IntervalDayTime, ArrowError>

Checked addition operation
§

fn add_wrapping(self, rhs: IntervalDayTime) -> IntervalDayTime

Wrapping addition operation
§

fn sub_checked( self, rhs: IntervalDayTime, ) -> Result<IntervalDayTime, ArrowError>

Checked subtraction operation
§

fn sub_wrapping(self, rhs: IntervalDayTime) -> IntervalDayTime

Wrapping subtraction operation
§

fn mul_checked( self, rhs: IntervalDayTime, ) -> Result<IntervalDayTime, ArrowError>

Checked multiplication operation
§

fn mul_wrapping(self, rhs: IntervalDayTime) -> IntervalDayTime

Wrapping multiplication operation
§

fn div_checked( self, rhs: IntervalDayTime, ) -> Result<IntervalDayTime, ArrowError>

Checked division operation
§

fn div_wrapping(self, rhs: IntervalDayTime) -> IntervalDayTime

Wrapping division operation
§

fn mod_checked( self, rhs: IntervalDayTime, ) -> Result<IntervalDayTime, ArrowError>

Checked remainder operation
§

fn mod_wrapping(self, rhs: IntervalDayTime) -> IntervalDayTime

Wrapping remainder operation
§

fn neg_checked(self) -> Result<IntervalDayTime, ArrowError>

Checked negation operation
§

fn pow_checked(self, exp: u32) -> Result<IntervalDayTime, ArrowError>

Checked exponentiation operation
§

fn pow_wrapping(self, exp: u32) -> IntervalDayTime

Wrapping exponentiation operation
§

fn neg_wrapping(self) -> IntervalDayTime

Wrapping negation operation
§

fn is_zero(self) -> bool

Returns true if zero else false
§

fn compare(self, rhs: IntervalDayTime) -> Ordering

Compare operation
§

fn is_eq(self, rhs: IntervalDayTime) -> bool

Equality operation
§

fn is_ne(self, rhs: Self) -> bool

Not equal operation
§

fn is_lt(self, rhs: Self) -> bool

Less than operation
§

fn is_le(self, rhs: Self) -> bool

Less than equals operation
§

fn is_gt(self, rhs: Self) -> bool

Greater than operation
§

fn is_ge(self, rhs: Self) -> bool

Greater than equals operation
§

impl Clone for IntervalDayTime

§

fn clone(&self) -> IntervalDayTime

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
§

impl Debug for IntervalDayTime

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl Default for IntervalDayTime

§

fn default() -> IntervalDayTime

Returns the “default value” for a type. Read more
§

impl<'a, 'b> Div<&'b IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the / operator.
§

fn div( self, rhs: &'b IntervalDayTime, ) -> <&'a IntervalDayTime as Div<&'b IntervalDayTime>>::Output

Performs the / operation. Read more
§

impl<'a> Div<&'a IntervalDayTime> for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the / operator.
§

fn div( self, rhs: &'a IntervalDayTime, ) -> <IntervalDayTime as Div<&'a IntervalDayTime>>::Output

Performs the / operation. Read more
§

impl<'a> Div<IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the / operator.
§

fn div( self, rhs: IntervalDayTime, ) -> <&'a IntervalDayTime as Div<IntervalDayTime>>::Output

Performs the / operation. Read more
§

impl Div for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the / operator.
§

fn div(self, rhs: IntervalDayTime) -> <IntervalDayTime as Div>::Output

Performs the / operation. Read more
§

impl DivAssign for IntervalDayTime

§

fn div_assign(&mut self, rhs: IntervalDayTime)

Performs the /= operation. Read more
§

impl Hash for IntervalDayTime

§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
§

impl<'a, 'b> Mul<&'b IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the * operator.
§

fn mul( self, rhs: &'b IntervalDayTime, ) -> <&'a IntervalDayTime as Mul<&'b IntervalDayTime>>::Output

Performs the * operation. Read more
§

impl<'a> Mul<&'a IntervalDayTime> for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the * operator.
§

fn mul( self, rhs: &'a IntervalDayTime, ) -> <IntervalDayTime as Mul<&'a IntervalDayTime>>::Output

Performs the * operation. Read more
§

impl<'a> Mul<IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the * operator.
§

fn mul( self, rhs: IntervalDayTime, ) -> <&'a IntervalDayTime as Mul<IntervalDayTime>>::Output

Performs the * operation. Read more
§

impl Mul for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the * operator.
§

fn mul(self, rhs: IntervalDayTime) -> <IntervalDayTime as Mul>::Output

Performs the * operation. Read more
§

impl MulAssign for IntervalDayTime

§

fn mul_assign(&mut self, rhs: IntervalDayTime)

Performs the *= operation. Read more
§

impl Neg for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the - operator.
§

fn neg(self) -> <IntervalDayTime as Neg>::Output

Performs the unary - operation. Read more
§

impl Ord for IntervalDayTime

§

fn cmp(&self, other: &IntervalDayTime) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
§

impl PartialEq for IntervalDayTime

§

fn eq(&self, other: &IntervalDayTime) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
§

impl PartialOrd for IntervalDayTime

§

fn partial_cmp(&self, other: &IntervalDayTime) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
§

impl<'a, 'b> Rem<&'b IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the % operator.
§

fn rem( self, rhs: &'b IntervalDayTime, ) -> <&'a IntervalDayTime as Rem<&'b IntervalDayTime>>::Output

Performs the % operation. Read more
§

impl<'a> Rem<&'a IntervalDayTime> for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the % operator.
§

fn rem( self, rhs: &'a IntervalDayTime, ) -> <IntervalDayTime as Rem<&'a IntervalDayTime>>::Output

Performs the % operation. Read more
§

impl<'a> Rem<IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the % operator.
§

fn rem( self, rhs: IntervalDayTime, ) -> <&'a IntervalDayTime as Rem<IntervalDayTime>>::Output

Performs the % operation. Read more
§

impl Rem for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the % operator.
§

fn rem(self, rhs: IntervalDayTime) -> <IntervalDayTime as Rem>::Output

Performs the % operation. Read more
§

impl RemAssign for IntervalDayTime

§

fn rem_assign(&mut self, rhs: IntervalDayTime)

Performs the %= operation. Read more
§

impl<'a, 'b> Sub<&'b IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the - operator.
§

fn sub( self, rhs: &'b IntervalDayTime, ) -> <&'a IntervalDayTime as Sub<&'b IntervalDayTime>>::Output

Performs the - operation. Read more
§

impl<'a> Sub<&'a IntervalDayTime> for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the - operator.
§

fn sub( self, rhs: &'a IntervalDayTime, ) -> <IntervalDayTime as Sub<&'a IntervalDayTime>>::Output

Performs the - operation. Read more
§

impl<'a> Sub<IntervalDayTime> for &'a IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the - operator.
§

fn sub( self, rhs: IntervalDayTime, ) -> <&'a IntervalDayTime as Sub<IntervalDayTime>>::Output

Performs the - operation. Read more
§

impl Sub for IntervalDayTime

§

type Output = IntervalDayTime

The resulting type after applying the - operator.
§

fn sub(self, rhs: IntervalDayTime) -> <IntervalDayTime as Sub>::Output

Performs the - operation. Read more
§

impl SubAssign for IntervalDayTime

§

fn sub_assign(&mut self, rhs: IntervalDayTime)

Performs the -= operation. Read more
§

impl Copy for IntervalDayTime

§

impl Eq for IntervalDayTime

§

impl StructuralPartialEq for IntervalDayTime

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
§

impl<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> ToByteSlice for T
where T: ArrowNativeType,

§

fn to_byte_slice(&self) -> &[u8]

Converts this instance into a byte slice
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

Source§

impl<T, Rhs> NumAssignOps<Rhs> for T
where T: AddAssign<Rhs> + SubAssign<Rhs> + MulAssign<Rhs> + DivAssign<Rhs> + RemAssign<Rhs>,

Source§

impl<T, Rhs, Output> NumOps<Rhs, Output> for T
where T: Sub<Rhs, Output = Output> + Mul<Rhs, Output = Output> + Div<Rhs, Output = Output> + Add<Rhs, Output = Output> + Rem<Rhs, Output = Output>,

Source§

impl<T, Base> RefNum<Base> for T
where T: NumOps<Base, Base> + for<'r> NumOps<&'r Base, Base>,

§

impl<T> Ungil for T
where T: Send,