diff --git a/main.zig b/main.zig index 780419ea6da493345cf616ed0d5781e1ec04d0fe..73c303ee3d2ddaedbbcbdf9a989eb0bfe38364a4 100644 --- a/main.zig +++ b/main.zig @@ -33,3 +33,6 @@ test { try assertOk(1144509852789, "Qo", "2nd"); } test { try assertOk(1144509852789, "D", "8"); } test { try assertOk(1144509852789, "Do", "8th"); } test { try assertOk(1144509852789, "DD", "08"); } +test { try assertOk(1144509852789, "DDD", "98"); } +test { try assertOk(1144509852789, "DDDo", "98th"); } +test { try assertOk(1144509852789, "DDDD", "098"); } diff --git a/time.zig b/time.zig index 6d936573c9fd86340a2952d148a84e25feb0c342..67b7a891d4d0a9d124b1fb9d5c80e61a02a1f6e1 100644 --- a/time.zig +++ b/time.zig @@ -239,6 +239,8 @@ pub const DateTime = struct { .D => try writer.print("{}", .{self.days + 1}), .Do => try printOrdinal(writer, self.days + 1), .DDD => try writer.print("{}", .{self.dayOfThisYear() + 1}), + .DDDo => try printOrdinal(writer, self.dayOfThisYear() + 1), + .DDDD => try writer.print("{:0>3}", .{self.dayOfThisYear() + 1}), else => @compileError("'" ++ @tagName(tag) ++ "' not currently supported"), }