From 53f2acade9629dfa3c738f55d641f453c7ea0a08 Mon Sep 17 00:00:00 2001 From: data-man Date: Sun, 15 Nov 2020 07:11:56 +0500 Subject: [PATCH] Autodetect number radix --- args.zig | 4 ++-- demo.zig | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/args.zig b/args.zig index 9a8e0df..2a2afa6 100644 --- a/args.zig +++ b/args.zig @@ -206,9 +206,9 @@ fn convertArgumentValue(comptime T: type, textInput: []const u8) !T { else return true, // boolean options are always true .Int => |int| return if (int.is_signed) - try std.fmt.parseInt(T, textInput, 10) + try std.fmt.parseInt(T, textInput, 0) else - try std.fmt.parseUnsigned(T, textInput, 10), + try std.fmt.parseUnsigned(T, textInput, 0), .Float => return try std.fmt.parseFloat(T, textInput), .Enum => { if (@hasDecl(T, "parse")) { diff --git a/demo.zig b/demo.zig index 4d15968..081c38b 100644 --- a/demo.zig +++ b/demo.zig @@ -11,6 +11,8 @@ pub fn main() !void { @"with-hexdump": bool = false, @"intermix-source": bool = false, numberOfBytes: ?i32 = null, + signed_number: ?i64 = null, + unsigned_number: ?u64 = null, mode: enum { default, special, slow, fast } = .default, // This declares short-hand options for single hyphen