Converts an [`ArrowPrimitiveType`] to [`NaiveDateTime`]
(v: i64)
| 241 | |
| 242 | /// Converts an [`ArrowPrimitiveType`] to [`NaiveDateTime`] |
| 243 | pub fn as_datetime<T: ArrowPrimitiveType>(v: i64) -> Option<NaiveDateTime> { |
| 244 | match T::DATA_TYPE { |
| 245 | DataType::Date32 => date32_to_datetime(v as i32), |
| 246 | DataType::Date64 => date64_to_datetime(v), |
| 247 | DataType::Time32(_) | DataType::Time64(_) => None, |
| 248 | DataType::Timestamp(unit, _) => match unit { |
| 249 | TimeUnit::Second => timestamp_s_to_datetime(v), |
| 250 | TimeUnit::Millisecond => timestamp_ms_to_datetime(v), |
| 251 | TimeUnit::Microsecond => timestamp_us_to_datetime(v), |
| 252 | TimeUnit::Nanosecond => timestamp_ns_to_datetime(v), |
| 253 | }, |
| 254 | // interval is not yet fully documented [ARROW-3097] |
| 255 | DataType::Interval(_) => None, |
| 256 | _ => None, |
| 257 | } |
| 258 | } |
| 259 | |
| 260 | /// Converts an [`ArrowPrimitiveType`] to [`DateTime<Tz>`] |
| 261 | pub fn as_datetime_with_timezone<T: ArrowPrimitiveType>(v: i64, tz: Tz) -> Option<DateTime<Tz>> { |
nothing calls this directly
no test coverage detected