|
1 | 1 | use chrono::offset::TimeZone;
|
2 |
| -use chrono::{DateTime, Datelike, Utc}; |
| 2 | +use chrono::{DateTime, Utc}; |
3 | 3 | use hashbrown::HashMap;
|
4 | 4 | use intern::intern;
|
5 | 5 | use serde::{Deserialize, Serialize};
|
@@ -51,33 +51,13 @@ impl std::str::FromStr for Date {
|
51 | 51 | }
|
52 | 52 |
|
53 | 53 | impl Date {
|
54 |
| - pub fn from_format(date: &str, format: &str) -> Result<Date, DateParseError> { |
55 |
| - match DateTime::parse_from_str(date, format) { |
56 |
| - Ok(value) => Ok(Date(value.with_timezone(&Utc))), |
57 |
| - Err(_) => match Utc.datetime_from_str(date, format) { |
58 |
| - Ok(dt) => Ok(Date(dt)), |
59 |
| - Err(err) => Err(DateParseError { |
60 |
| - input: date.to_string(), |
61 |
| - format: format.to_string(), |
62 |
| - error: err, |
63 |
| - }), |
64 |
| - }, |
65 |
| - } |
66 |
| - } |
67 |
| - |
68 | 54 | pub fn ymd_hms(year: i32, month: u32, day: u32, h: u32, m: u32, s: u32) -> Date {
|
69 | 55 | Date(Utc.with_ymd_and_hms(year, month, day, h, m, s).unwrap())
|
70 | 56 | }
|
71 | 57 |
|
72 | 58 | pub fn empty() -> Date {
|
73 | 59 | Date::ymd_hms(2000, 1, 1, 1, 1, 1)
|
74 | 60 | }
|
75 |
| - |
76 |
| - pub fn start_of_week(&self) -> Date { |
77 |
| - let weekday = self.0.weekday(); |
78 |
| - // num_days_from_sunday is 0 for Sunday |
79 |
| - Date(self.0 - chrono::Duration::days(weekday.num_days_from_sunday() as i64)) |
80 |
| - } |
81 | 61 | }
|
82 | 62 |
|
83 | 63 | impl fmt::Display for Date {
|
|
0 commit comments