|
1 | 1 | use std::fmt::{self, write}; |
2 | 2 | use std::time::SystemTime; |
3 | 3 |
|
4 | | -use chrono::{DateTime, Utc}; |
| 4 | +use chrono::{DateTime, SecondsFormat, Utc}; |
5 | 5 |
|
6 | 6 | use crate::fmt::{Formatter, TimestampPrecision}; |
7 | 7 |
|
@@ -104,17 +104,16 @@ impl fmt::Debug for Timestamp { |
104 | 104 |
|
105 | 105 | impl fmt::Display for Timestamp { |
106 | 106 | fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { |
107 | | - // let formatter = match self.precision { |
108 | | - // TimestampPrecision::Seconds => format_rfc3339_seconds, |
109 | | - // TimestampPrecision::Millis => format_rfc3339_millis, |
110 | | - // TimestampPrecision::Micros => format_rfc3339_micros, |
111 | | - // TimestampPrecision::Nanos => format_rfc3339_nanos, |
112 | | - // }; |
113 | | - |
114 | | - // formatter(self.time).fmt(f) |
115 | | - |
116 | | - // self.time.to_rfc3339().fmt(f) |
117 | | - |
118 | | - write!(f, "Hello") |
| 107 | + self.time |
| 108 | + .to_rfc3339_opts( |
| 109 | + match self.precision { |
| 110 | + TimestampPrecision::Seconds => SecondsFormat::Secs, |
| 111 | + TimestampPrecision::Millis => SecondsFormat::Millis, |
| 112 | + TimestampPrecision::Micros => SecondsFormat::Micros, |
| 113 | + TimestampPrecision::Nanos => SecondsFormat::Nanos, |
| 114 | + }, |
| 115 | + true, |
| 116 | + ) |
| 117 | + .fmt(f) |
119 | 118 | } |
120 | 119 | } |
0 commit comments