| ... | ... | @@ -223,24 +223,26 @@ pub const DateTime = struct { |
| 223 | 223 | |
| 224 | 224 | if (next) |tag| { |
| 225 | 225 | switch (tag) { |
| 226 | | .ddd => try writer.writeAll(@tagName(self.weekday)), |
| 227 | | .DD => try writer.print("{:0>2}", .{self.days + 1}), |
| 228 | | .YYYY => try writer.print("{:0>4}", .{self.years}), |
| 229 | 226 | .MM => try writer.print("{:0>2}", .{self.months + 1}), |
| 230 | 227 | .M => try writer.print("{}", .{self.months + 1}), |
| 231 | 228 | .Mo => try printOrdinal(writer, self.months + 1), |
| 232 | 229 | .MMM => try printLongName(writer, self.months, &[_]string{ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }), |
| 233 | 230 | .MMMM => try printLongName(writer, self.months, &[_]string{ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }), |
| 231 | |
| 234 | 232 | .Q => try writer.print("{}", .{self.months / 3 + 1}), |
| 235 | 233 | .Qo => try printOrdinal(writer, self.months / 3 + 1), |
| 234 | |
| 236 | 235 | .D => try writer.print("{}", .{self.days + 1}), |
| 237 | 236 | .Do => try printOrdinal(writer, self.days + 1), |
| 237 | .DD => try writer.print("{:0>2}", .{self.days + 1}), |
| 238 | |
| 238 | 239 | .DDD => try writer.print("{}", .{self.dayOfThisYear() + 1}), |
| 239 | 240 | .DDDo => try printOrdinal(writer, self.dayOfThisYear() + 1), |
| 240 | 241 | .DDDD => try writer.print("{:0>3}", .{self.dayOfThisYear() + 1}), |
| 241 | 242 | .d => try writer.print("{}", .{@enumToInt(self.weekday)}), |
| 242 | 243 | .do => try printOrdinal(writer, @enumToInt(self.weekday)), |
| 243 | 244 | .dd => try writer.writeAll(@tagName(self.weekday)[0..2]), |
| 245 | .ddd => try writer.writeAll(@tagName(self.weekday)), |
| 244 | 246 | .dddd => try printLongName(writer, @enumToInt(self.weekday), &[_]string{ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }), |
| 245 | 247 | .E => try writer.print("{}", .{@enumToInt(self.weekday) + 1}), |
| 246 | 248 | .w => try writer.print("{}", .{self.dayOfThisYear() / 7 + 1}), |
| ... | ... | @@ -249,20 +251,27 @@ pub const DateTime = struct { |
| 249 | 251 | .Y => try writer.print("{}", .{self.years + 10000}), |
| 250 | 252 | .YY => try writer.print("{:0>2}", .{self.years % 100}), |
| 251 | 253 | .YYY => try writer.print("{}", .{self.years}), |
| 254 | .YYYY => try writer.print("{:0>4}", .{self.years}), |
| 255 | |
| 252 | 256 | .N => try writer.writeAll(@tagName(self.era)), |
| 253 | 257 | .NN => try writer.writeAll("Anno Domini"), |
| 258 | |
| 254 | 259 | .A => try printLongName(writer, self.hours / 12, &[_]string{ "AM", "PM" }), |
| 255 | 260 | .a => try printLongName(writer, self.hours / 12, &[_]string{ "am", "pm" }), |
| 261 | |
| 256 | 262 | .H => try writer.print("{}", .{self.hours}), |
| 257 | 263 | .HH => try writer.print("{:0>2}", .{self.hours}), |
| 258 | 264 | .h => try writer.print("{}", .{wrap(self.hours, 12)}), |
| 259 | 265 | .hh => try writer.print("{:0>2}", .{wrap(self.hours, 12)}), |
| 260 | 266 | .k => try writer.print("{}", .{wrap(self.hours, 24)}), |
| 261 | 267 | .kk => try writer.print("{:0>2}", .{wrap(self.hours, 24)}), |
| 268 | |
| 262 | 269 | .m => try writer.print("{}", .{self.minutes}), |
| 263 | 270 | .mm => try writer.print("{:0>2}", .{self.minutes}), |
| 271 | |
| 264 | 272 | .s => try writer.print("{}", .{self.seconds}), |
| 265 | 273 | .ss => try writer.print("{:0>2}", .{self.seconds}), |
| 274 | |
| 266 | 275 | .S => try writer.print("{}", .{self.ms / 100}), |
| 267 | 276 | .SS => try writer.print("{:0>2}", .{self.ms / 10}), |
| 268 | 277 | .SSS => try writer.print("{:0>3}", .{self.ms}), |