pub fn to_packed_u64(&self) -> u64 {
        if self.is_zero() {
            return 0;
        }
        let t = if self.tp == types::TIMESTAMP {
            self.time.naive_utc()
        } else {
            self.time.naive_local()
        };
        let ymd = ((t.year() as u64 * 13 + u64::from(t.month())) << 5) | u64::from(t.day());
        let hms =
            (u64::from(t.hour()) << 12) | (u64::from(t.minute()) << 6) | u64::from(t.second());
        let micro = u64::from(t.nanosecond()) / 1000;
        (((ymd << 17) | hms) << 24) | micro
    }
/// Serialize time to a u64.
///
/// If `tp` is TIMESTAMP, it will be converted to a UTC time first.
Serialize time to a u64.
If `tp` is TIMESTAMP, it will be converted to a UTC time first.
Serialize time to a u64 . If ` tp ` is TIMESTAMP it will be converted to a UTC time first .
pub fn to_packed_u64(&self) -> u64 {
        if self.is_zero() {
            return 0;
        }
        let t = if self.tp == types::TIMESTAMP {
            self.time.naive_utc()
        } else {
            self.time.naive_local()
        };
        let ymd = ((t.year() as u64 * 13 + u64::from(t.month())) << 5) | u64::from(t.day());
        let hms =
            (u64::from(t.hour()) << 12) | (u64::from(t.minute()) << 6) | u64::from(t.second());
        let micro = u64::from(t.nanosecond()) / 1000;
        (((ymd << 17) | hms) << 24) | micro
    }
pub fn to_packed_u64 ( & self ) -> u64 { if self . is_zero ( ) { return 0 ; } let t = if self . tp == types :: TIMESTAMP { self . time . naive_utc ( ) } else { self . time . naive_local ( ) } ; let ymd = ( ( t . year ( ) as u64 * 13 + u64 :: from ( t . month ( ) ) ) << 5 ) | u64 :: from ( t . day ( ) ) ; let hms = ( u64 :: from ( t . hour ( ) ) << 12 ) | ( u64 :: from ( t . minute ( ) ) << 6 ) | u64 :: from ( t . second ( ) ) ; let micro = u64 :: from ( t . nanosecond ( ) ) / 1000 ; ( ( ( ymd << 17 ) | hms ) << 24 ) | micro }
Serialize time to a u64.
Serialize time to a u64 .
&self