| ... | @@ -595,10 +595,16 @@ pub const Serializer = struct { | ... | @@ -595,10 +595,16 @@ pub const Serializer = struct { |
| 595 | return self.writer.writeAll("inf"); | 595 | return self.writer.writeAll("inf"); |
| 596 | } else if (std.math.isNegativeInf(val)) { | 596 | } else if (std.math.isNegativeInf(val)) { |
| 597 | return self.writer.writeAll("-inf"); | 597 | return self.writer.writeAll("-inf"); |
| | 598 | } else if (std.math.isNegativeZero(val)) { |
| | 599 | return self.writer.writeAll("-0.0"); |
| | 600 | } else { |
| | 601 | try std.fmt.format(self.writer, "{d}", .{val}); |
| | 602 | }, |
| | 603 | .comptime_float => if (val == 0) { |
| | 604 | return self.writer.writeAll("0"); |
| 598 | } else { | 605 | } else { |
| 599 | try std.fmt.format(self.writer, "{d}", .{val}); | 606 | try std.fmt.format(self.writer, "{d}", .{val}); |
| 600 | }, | 607 | }, |
| 601 | .comptime_float => try std.fmt.format(self.writer, "{d}", .{val}), | | |
| 602 | else => comptime unreachable, | 608 | else => comptime unreachable, |
| 603 | } | 609 | } |
| 604 | } | 610 | } |