authorgravatar for benjamin.feng@glassdoor.comBenjamin Feng <benjamin.feng@glassdoor.com> 2020-03-06 16:45:42-06:00
committergravatar for benjamin.feng@glassdoor.comBenjamin Feng <benjamin.feng@glassdoor.com> 2020-03-12 10:41:09-05:00
loged7f30e1cd0c00c82c511ad826fe8d8b60b2f57f
treef9c012d90e6bb2973c34b3adcf7eabb0957b8f3b
parent786216ca5a7cc992d1be895702d37798bc85bf14

Migrate last vestiges of fmt


2 files changed, 15 insertions(+), 17 deletions(-)

src-self-hosted/dep_tokenizer.zig+12-14
...@@ -306,12 +306,12 @@ pub const Tokenizer = struct {...@@ -306,12 +306,12 @@ pub const Tokenizer = struct {
306306
307 fn errorPosition(self: *Tokenizer, position: usize, bytes: []const u8, comptime fmt: []const u8, args: var) Error {307 fn errorPosition(self: *Tokenizer, position: usize, bytes: []const u8, comptime fmt: []const u8, args: var) Error {
308 var buffer = try std.Buffer.initSize(&self.arena.allocator, 0);308 var buffer = try std.Buffer.initSize(&self.arena.allocator, 0);
309 std.fmt.format(&buffer, anyerror, std.Buffer.append, fmt, args) catch {};309 try buffer.print(fmt, args);
310 try buffer.append(" '");310 try buffer.append(" '");
311 var out = makeOutput(std.Buffer.append, &buffer);311 var out = makeOutput(std.Buffer.append, &buffer);
312 try printCharValues(&out, bytes);312 try printCharValues(&out, bytes);
313 try buffer.append("'");313 try buffer.append("'");
314 std.fmt.format(&buffer, anyerror, std.Buffer.append, " at position {}", .{position - (bytes.len - 1)}) catch {};314 try buffer.print(" at position {}", .{position - (bytes.len - 1)});
315 self.error_text = buffer.toSlice();315 self.error_text = buffer.toSlice();
316 return Error.InvalidInput;316 return Error.InvalidInput;
317 }317 }
...@@ -319,10 +319,9 @@ pub const Tokenizer = struct {...@@ -319,10 +319,9 @@ pub const Tokenizer = struct {
319 fn errorIllegalChar(self: *Tokenizer, position: usize, char: u8, comptime fmt: []const u8, args: var) Error {319 fn errorIllegalChar(self: *Tokenizer, position: usize, char: u8, comptime fmt: []const u8, args: var) Error {
320 var buffer = try std.Buffer.initSize(&self.arena.allocator, 0);320 var buffer = try std.Buffer.initSize(&self.arena.allocator, 0);
321 try buffer.append("illegal char ");321 try buffer.append("illegal char ");
322 var out = makeOutput(std.Buffer.append, &buffer);322 try printUnderstandableChar(&buffer, char);
323 try printUnderstandableChar(&out, char);323 try buffer.print(" at position {}", .{position});
324 std.fmt.format(&buffer, anyerror, std.Buffer.append, " at position {}", .{position}) catch {};324 if (fmt.len != 0) try buffer.print(": " ++ fmt, args);
325 if (fmt.len != 0) std.fmt.format(&buffer, anyerror, std.Buffer.append, ": " ++ fmt, args) catch {};
326 self.error_text = buffer.toSlice();325 self.error_text = buffer.toSlice();
327 return Error.InvalidInput;326 return Error.InvalidInput;
328 }327 }
...@@ -980,13 +979,13 @@ fn hexDump16(out: var, offset: usize, bytes: []const u8) !void {...@@ -980,13 +979,13 @@ fn hexDump16(out: var, offset: usize, bytes: []const u8) !void {
980979
981fn printDecValue(out: var, value: u64, width: u8) !void {980fn printDecValue(out: var, value: u64, width: u8) !void {
982 var buffer: [20]u8 = undefined;981 var buffer: [20]u8 = undefined;
983 const len = std.fmt.formatIntBuf(buffer[0..], value, 10, false, width);982 const len = std.fmtstream.formatIntBuf(buffer[0..], value, 10, false, width);
984 try out.write(buffer[0..len]);983 try out.write(buffer[0..len]);
985}984}
986985
987fn printHexValue(out: var, value: u64, width: u8) !void {986fn printHexValue(out: var, value: u64, width: u8) !void {
988 var buffer: [16]u8 = undefined;987 var buffer: [16]u8 = undefined;
989 const len = std.fmt.formatIntBuf(buffer[0..], value, 16, false, width);988 const len = std.fmtstream.formatIntBuf(buffer[0..], value, 16, false, width);
990 try out.write(buffer[0..len]);989 try out.write(buffer[0..len]);
991}990}
992991
...@@ -996,14 +995,13 @@ fn printCharValues(out: var, bytes: []const u8) !void {...@@ -996,14 +995,13 @@ fn printCharValues(out: var, bytes: []const u8) !void {
996 }995 }
997}996}
998997
999fn printUnderstandableChar(out: var, char: u8) !void {998fn printUnderstandableChar(buffer: *std.Buffer, char: u8) !void {
1000 if (!std.ascii.isPrint(char) or char == ' ') {999 if (!std.ascii.isPrint(char) or char == ' ') {
1001 const output = @typeInfo(@TypeOf(out)).Pointer.child.output;1000 try buffer.print("\\x{X:2}", .{char});
1002 std.fmt.format(out.context, anyerror, output, "\\x{X:2}", .{char}) catch {};
1003 } else {1001 } else {
1004 try out.write("'");1002 try buffer.append("'");
1005 try out.write(&[_]u8{printable_char_tab[char]});1003 try buffer.appendByte(printable_char_tab[char]);
1006 try out.write("'");1004 try buffer.append("'");
1007 }1005 }
1008}1006}
10091007
test/stage1/behavior/enum_with_members.zig+3-3
...@@ -1,6 +1,6 @@...@@ -1,6 +1,6 @@
1const expect = @import("std").testing.expect;1const expect = @import("std").testing.expect;
2const mem = @import("std").mem;2const mem = @import("std").mem;
3const fmt = @import("std").fmt;3const fmtstream = @import("std").fmtstream;
44
5const ET = union(enum) {5const ET = union(enum) {
6 SINT: i32,6 SINT: i32,
...@@ -8,8 +8,8 @@ const ET = union(enum) {...@@ -8,8 +8,8 @@ const ET = union(enum) {
88
9 pub fn print(a: *const ET, buf: []u8) anyerror!usize {9 pub fn print(a: *const ET, buf: []u8) anyerror!usize {
10 return switch (a.*) {10 return switch (a.*) {
11 ET.SINT => |x| fmt.formatIntBuf(buf, x, 10, false, fmt.FormatOptions{}),11 ET.SINT => |x| fmtstream.formatIntBuf(buf, x, 10, false, fmtstream.FormatOptions{}),
12 ET.UINT => |x| fmt.formatIntBuf(buf, x, 10, false, fmt.FormatOptions{}),12 ET.UINT => |x| fmtstream.formatIntBuf(buf, x, 10, false, fmtstream.FormatOptions{}),
13 };13 };
14 }14 }
15};15};