From 5235482ab4631b3c112038f2d73c849772dea1ae Mon Sep 17 00:00:00 2001 From: Luna Date: Mon, 1 Jun 2020 23:58:56 -0300 Subject: [PATCH] print float parameters with decimal notation --- src/printer.zig | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/printer.zig b/src/printer.zig index 0cf8e85..2302cfc 100644 --- a/src/printer.zig +++ b/src/printer.zig @@ -1,9 +1,14 @@ +const std = @import("std"); const langs = @import("lang.zig"); fn printCommandWithParams(stream: var, command: var) !void { const Parameters = @TypeOf(command.parameters); inline for (@typeInfo(Parameters).Struct.fields) |field| { - try stream.print(" {}", .{@field(command.parameters, field.name)}); + if (field.field_type == f32 or field.field_type == f64) { + try stream.print(" {d}", .{@field(command.parameters, field.name)}); + } else { + try stream.print(" {}", .{@field(command.parameters, field.name)}); + } } } @@ -42,7 +47,7 @@ pub fn printList(list: langs.CommandList, stream: var) !void { .noop, .quicksave => {}, .rotate => { const rotate = cmd.cast(langs.Command.Rotate).?; - try stream.print(" {} {}", .{ rotate.deg, rotate.bgfill }); + try stream.print(" {d} {}", .{ rotate.deg, rotate.bgfill }); }, .amp => try printCommand(stream, cmd, .amp),