| author | |
| committer | |
| log | d31352ee85d633876877d87b813cd3611aa17d88 |
| tree | b7e1de55626ecc009e31a0c18574d061e2641202 |
| parent | 05fd20dc104b3654ce9c5d7a22a2bff66a940dba |
24 files changed, 76 insertions(+), 76 deletions(-)
build.zig+5-5| ... | ... | @@ -187,7 +187,7 @@ pub fn build(b: *Builder) !void { |
| 187 | 187 | }, |
| 188 | 188 | 2 => { |
| 189 | 189 | // Untagged development build (e.g. 0.8.0-684-gbbe2cca1a). |
| 190 | var it = mem.split(git_describe, "-"); | |
| 190 | var it = mem.split(u8, git_describe, "-"); | |
| 191 | 191 | const tagged_ancestor = it.next() orelse unreachable; |
| 192 | 192 | const commit_height = it.next() orelse unreachable; |
| 193 | 193 | const commit_id = it.next() orelse unreachable; |
| ... | ... | @@ -479,7 +479,7 @@ fn addCxxKnownPath( |
| 479 | 479 | ctx.cxx_compiler, |
| 480 | 480 | b.fmt("-print-file-name={s}", .{objname}), |
| 481 | 481 | }); |
| 482 | const path_unpadded = mem.tokenize(path_padded, "\r\n").next().?; | |
| 482 | const path_unpadded = mem.tokenize(u8, path_padded, "\r\n").next().?; | |
| 483 | 483 | if (mem.eql(u8, path_unpadded, objname)) { |
| 484 | 484 | if (errtxt) |msg| { |
| 485 | 485 | warn("{s}", .{msg}); |
| ... | ... | @@ -502,7 +502,7 @@ fn addCxxKnownPath( |
| 502 | 502 | } |
| 503 | 503 | |
| 504 | 504 | fn addCMakeLibraryList(exe: *std.build.LibExeObjStep, list: []const u8) void { |
| 505 | var it = mem.tokenize(list, ";"); | |
| 505 | var it = mem.tokenize(u8, list, ";"); | |
| 506 | 506 | while (it.next()) |lib| { |
| 507 | 507 | if (mem.startsWith(u8, lib, "-l")) { |
| 508 | 508 | exe.linkSystemLibrary(lib["-l".len..]); |
| ... | ... | @@ -596,11 +596,11 @@ fn findAndParseConfigH(b: *Builder, config_h_path_option: ?[]const u8) ?CMakeCon |
| 596 | 596 | }, |
| 597 | 597 | }; |
| 598 | 598 | |
| 599 | var lines_it = mem.tokenize(config_h_text, "\r\n"); | |
| 599 | var lines_it = mem.tokenize(u8, config_h_text, "\r\n"); | |
| 600 | 600 | while (lines_it.next()) |line| { |
| 601 | 601 | inline for (mappings) |mapping| { |
| 602 | 602 | if (mem.startsWith(u8, line, mapping.prefix)) { |
| 603 | var it = mem.split(line, "\""); | |
| 603 | var it = mem.split(u8, line, "\""); | |
| 604 | 604 | _ = it.next().?; // skip the stuff before the quote |
| 605 | 605 | const quoted = it.next().?; // the stuff inside the quote |
| 606 | 606 | @field(ctx, mapping.field) = toNativePathSep(b, quoted); |
lib/std/SemanticVersion.zig+5-5| ... | ... | @@ -48,8 +48,8 @@ pub fn order(lhs: Version, rhs: Version) std.math.Order { |
| 48 | 48 | if (lhs.pre == null and rhs.pre != null) return .gt; |
| 49 | 49 | |
| 50 | 50 | // Iterate over pre-release identifiers until a difference is found. |
| 51 | var lhs_pre_it = std.mem.split(lhs.pre.?, "."); | |
| 52 | var rhs_pre_it = std.mem.split(rhs.pre.?, "."); | |
| 51 | var lhs_pre_it = std.mem.split(u8, lhs.pre.?, "."); | |
| 52 | var rhs_pre_it = std.mem.split(u8, rhs.pre.?, "."); | |
| 53 | 53 | while (true) { |
| 54 | 54 | const next_lid = lhs_pre_it.next(); |
| 55 | 55 | const next_rid = rhs_pre_it.next(); |
| ... | ... | @@ -92,7 +92,7 @@ pub fn parse(text: []const u8) !Version { |
| 92 | 92 | // Parse the required major, minor, and patch numbers. |
| 93 | 93 | const extra_index = std.mem.indexOfAny(u8, text, "-+"); |
| 94 | 94 | const required = text[0..(extra_index orelse text.len)]; |
| 95 | var it = std.mem.split(required, "."); | |
| 95 | var it = std.mem.split(u8, required, "."); | |
| 96 | 96 | var ver = Version{ |
| 97 | 97 | .major = try parseNum(it.next() orelse return error.InvalidVersion), |
| 98 | 98 | .minor = try parseNum(it.next() orelse return error.InvalidVersion), |
| ... | ... | @@ -114,7 +114,7 @@ pub fn parse(text: []const u8) !Version { |
| 114 | 114 | // Check validity of optional pre-release identifiers. |
| 115 | 115 | // See: https://semver.org/#spec-item-9 |
| 116 | 116 | if (ver.pre) |pre| { |
| 117 | it = std.mem.split(pre, "."); | |
| 117 | it = std.mem.split(u8, pre, "."); | |
| 118 | 118 | while (it.next()) |id| { |
| 119 | 119 | // Identifiers MUST NOT be empty. |
| 120 | 120 | if (id.len == 0) return error.InvalidVersion; |
| ... | ... | @@ -133,7 +133,7 @@ pub fn parse(text: []const u8) !Version { |
| 133 | 133 | // Check validity of optional build metadata identifiers. |
| 134 | 134 | // See: https://semver.org/#spec-item-10 |
| 135 | 135 | if (ver.build) |build| { |
| 136 | it = std.mem.split(build, "."); | |
| 136 | it = std.mem.split(u8, build, "."); | |
| 137 | 137 | while (it.next()) |id| { |
| 138 | 138 | // Identifiers MUST NOT be empty. |
| 139 | 139 | if (id.len == 0) return error.InvalidVersion; |
lib/std/build.zig+4-4| ... | ... | @@ -1085,7 +1085,7 @@ pub const Builder = struct { |
| 1085 | 1085 | if (fs.path.isAbsolute(name)) { |
| 1086 | 1086 | return name; |
| 1087 | 1087 | } |
| 1088 | var it = mem.tokenize(PATH, &[_]u8{fs.path.delimiter}); | |
| 1088 | var it = mem.tokenize(u8, PATH, &[_]u8{fs.path.delimiter}); | |
| 1089 | 1089 | while (it.next()) |path| { |
| 1090 | 1090 | const full_path = try fs.path.join(self.allocator, &[_][]const u8{ |
| 1091 | 1091 | path, |
| ... | ... | @@ -1211,10 +1211,10 @@ pub const Builder = struct { |
| 1211 | 1211 | const stdout = try self.execAllowFail(&[_][]const u8{ "pkg-config", "--list-all" }, out_code, .Ignore); |
| 1212 | 1212 | var list = ArrayList(PkgConfigPkg).init(self.allocator); |
| 1213 | 1213 | errdefer list.deinit(); |
| 1214 | var line_it = mem.tokenize(stdout, "\r\n"); | |
| 1214 | var line_it = mem.tokenize(u8, stdout, "\r\n"); | |
| 1215 | 1215 | while (line_it.next()) |line| { |
| 1216 | 1216 | if (mem.trim(u8, line, " \t").len == 0) continue; |
| 1217 | var tok_it = mem.tokenize(line, " \t"); | |
| 1217 | var tok_it = mem.tokenize(u8, line, " \t"); | |
| 1218 | 1218 | try list.append(PkgConfigPkg{ |
| 1219 | 1219 | .name = tok_it.next() orelse return error.PkgConfigInvalidOutput, |
| 1220 | 1220 | .desc = tok_it.rest(), |
| ... | ... | @@ -1872,7 +1872,7 @@ pub const LibExeObjStep = struct { |
| 1872 | 1872 | error.FileNotFound => return error.PkgConfigNotInstalled, |
| 1873 | 1873 | else => return err, |
| 1874 | 1874 | }; |
| 1875 | var it = mem.tokenize(stdout, " \r\n\t"); | |
| 1875 | var it = mem.tokenize(u8, stdout, " \r\n\t"); | |
| 1876 | 1876 | while (it.next()) |tok| { |
| 1877 | 1877 | if (mem.eql(u8, tok, "-I")) { |
| 1878 | 1878 | const dir = it.next() orelse return error.PkgConfigInvalidOutput; |
lib/std/builtin.zig+1-1| ... | ... | @@ -509,7 +509,7 @@ pub const Version = struct { |
| 509 | 509 | // found no digits or '.' before unexpected character |
| 510 | 510 | if (end == 0) return error.InvalidVersion; |
| 511 | 511 | |
| 512 | var it = std.mem.split(text[0..end], "."); | |
| 512 | var it = std.mem.split(u8, text[0..end], "."); | |
| 513 | 513 | // substring is not empty, first call will succeed |
| 514 | 514 | const major = it.next().?; |
| 515 | 515 | if (major.len == 0) return error.InvalidVersion; |
lib/std/child_process.zig+2-2| ... | ... | @@ -836,12 +836,12 @@ pub const ChildProcess = struct { |
| 836 | 836 | |
| 837 | 837 | const app_name = self.argv[0]; |
| 838 | 838 | |
| 839 | var it = mem.tokenize(PATH, ";"); | |
| 839 | var it = mem.tokenize(u8, PATH, ";"); | |
| 840 | 840 | retry: while (it.next()) |search_path| { |
| 841 | 841 | const path_no_ext = try fs.path.join(self.allocator, &[_][]const u8{ search_path, app_name }); |
| 842 | 842 | defer self.allocator.free(path_no_ext); |
| 843 | 843 | |
| 844 | var ext_it = mem.tokenize(PATHEXT, ";"); | |
| 844 | var ext_it = mem.tokenize(u8, PATHEXT, ";"); | |
| 845 | 845 | while (ext_it.next()) |app_ext| { |
| 846 | 846 | const joined_path = try mem.concat(self.allocator, u8, &[_][]const u8{ path_no_ext, app_ext }); |
| 847 | 847 | defer self.allocator.free(joined_path); |
lib/std/fs.zig+1-1| ... | ... | @@ -2455,7 +2455,7 @@ pub fn selfExePath(out_buffer: []u8) SelfExePathError![]u8 { |
| 2455 | 2455 | } else if (argv0.len != 0) { |
| 2456 | 2456 | // argv[0] is not empty (and not a path): search it inside PATH |
| 2457 | 2457 | const PATH = std.os.getenvZ("PATH") orelse return error.FileNotFound; |
| 2458 | var path_it = mem.tokenize(PATH, &[_]u8{path.delimiter}); | |
| 2458 | var path_it = mem.tokenize(u8, PATH, &[_]u8{path.delimiter}); | |
| 2459 | 2459 | while (path_it.next()) |a_path| { |
| 2460 | 2460 | var resolved_path_buf: [MAX_PATH_BYTES - 1:0]u8 = undefined; |
| 2461 | 2461 | const resolved_path = std.fmt.bufPrintZ(&resolved_path_buf, "{s}/{s}", .{ |
lib/std/fs/path.zig+13-13| ... | ... | @@ -345,7 +345,7 @@ pub fn windowsParsePath(path: []const u8) WindowsPath { |
| 345 | 345 | return relative_path; |
| 346 | 346 | } |
| 347 | 347 | |
| 348 | var it = mem.tokenize(path, &[_]u8{this_sep}); | |
| 348 | var it = mem.tokenize(u8, path, &[_]u8{this_sep}); | |
| 349 | 349 | _ = (it.next() orelse return relative_path); |
| 350 | 350 | _ = (it.next() orelse return relative_path); |
| 351 | 351 | return WindowsPath{ |
| ... | ... | @@ -407,8 +407,8 @@ fn networkShareServersEql(ns1: []const u8, ns2: []const u8) bool { |
| 407 | 407 | const sep1 = ns1[0]; |
| 408 | 408 | const sep2 = ns2[0]; |
| 409 | 409 | |
| 410 | var it1 = mem.tokenize(ns1, &[_]u8{sep1}); | |
| 411 | var it2 = mem.tokenize(ns2, &[_]u8{sep2}); | |
| 410 | var it1 = mem.tokenize(u8, ns1, &[_]u8{sep1}); | |
| 411 | var it2 = mem.tokenize(u8, ns2, &[_]u8{sep2}); | |
| 412 | 412 | |
| 413 | 413 | // TODO ASCII is wrong, we actually need full unicode support to compare paths. |
| 414 | 414 | return asciiEqlIgnoreCase(it1.next().?, it2.next().?); |
| ... | ... | @@ -428,8 +428,8 @@ fn compareDiskDesignators(kind: WindowsPath.Kind, p1: []const u8, p2: []const u8 |
| 428 | 428 | const sep1 = p1[0]; |
| 429 | 429 | const sep2 = p2[0]; |
| 430 | 430 | |
| 431 | var it1 = mem.tokenize(p1, &[_]u8{sep1}); | |
| 432 | var it2 = mem.tokenize(p2, &[_]u8{sep2}); | |
| 431 | var it1 = mem.tokenize(u8, p1, &[_]u8{sep1}); | |
| 432 | var it2 = mem.tokenize(u8, p2, &[_]u8{sep2}); | |
| 433 | 433 | |
| 434 | 434 | // TODO ASCII is wrong, we actually need full unicode support to compare paths. |
| 435 | 435 | return asciiEqlIgnoreCase(it1.next().?, it2.next().?) and asciiEqlIgnoreCase(it1.next().?, it2.next().?); |
| ... | ... | @@ -551,7 +551,7 @@ pub fn resolveWindows(allocator: *Allocator, paths: []const []const u8) ![]u8 { |
| 551 | 551 | }, |
| 552 | 552 | WindowsPath.Kind.NetworkShare => { |
| 553 | 553 | result = try allocator.alloc(u8, max_size); |
| 554 | var it = mem.tokenize(paths[first_index], "/\\"); | |
| 554 | var it = mem.tokenize(u8, paths[first_index], "/\\"); | |
| 555 | 555 | const server_name = it.next().?; |
| 556 | 556 | const other_name = it.next().?; |
| 557 | 557 | |
| ... | ... | @@ -618,7 +618,7 @@ pub fn resolveWindows(allocator: *Allocator, paths: []const []const u8) ![]u8 { |
| 618 | 618 | if (!correct_disk_designator) { |
| 619 | 619 | continue; |
| 620 | 620 | } |
| 621 | var it = mem.tokenize(p[parsed.disk_designator.len..], "/\\"); | |
| 621 | var it = mem.tokenize(u8, p[parsed.disk_designator.len..], "/\\"); | |
| 622 | 622 | while (it.next()) |component| { |
| 623 | 623 | if (mem.eql(u8, component, ".")) { |
| 624 | 624 | continue; |
| ... | ... | @@ -687,7 +687,7 @@ pub fn resolvePosix(allocator: *Allocator, paths: []const []const u8) ![]u8 { |
| 687 | 687 | errdefer allocator.free(result); |
| 688 | 688 | |
| 689 | 689 | for (paths[first_index..]) |p| { |
| 690 | var it = mem.tokenize(p, "/"); | |
| 690 | var it = mem.tokenize(u8, p, "/"); | |
| 691 | 691 | while (it.next()) |component| { |
| 692 | 692 | if (mem.eql(u8, component, ".")) { |
| 693 | 693 | continue; |
| ... | ... | @@ -1101,8 +1101,8 @@ pub fn relativeWindows(allocator: *Allocator, from: []const u8, to: []const u8) |
| 1101 | 1101 | return resolved_to; |
| 1102 | 1102 | } |
| 1103 | 1103 | |
| 1104 | var from_it = mem.tokenize(resolved_from, "/\\"); | |
| 1105 | var to_it = mem.tokenize(resolved_to, "/\\"); | |
| 1104 | var from_it = mem.tokenize(u8, resolved_from, "/\\"); | |
| 1105 | var to_it = mem.tokenize(u8, resolved_to, "/\\"); | |
| 1106 | 1106 | while (true) { |
| 1107 | 1107 | const from_component = from_it.next() orelse return allocator.dupe(u8, to_it.rest()); |
| 1108 | 1108 | const to_rest = to_it.rest(); |
| ... | ... | @@ -1131,7 +1131,7 @@ pub fn relativeWindows(allocator: *Allocator, from: []const u8, to: []const u8) |
| 1131 | 1131 | // shave off the trailing slash |
| 1132 | 1132 | result_index -= 1; |
| 1133 | 1133 | |
| 1134 | var rest_it = mem.tokenize(to_rest, "/\\"); | |
| 1134 | var rest_it = mem.tokenize(u8, to_rest, "/\\"); | |
| 1135 | 1135 | while (rest_it.next()) |to_component| { |
| 1136 | 1136 | result[result_index] = '\\'; |
| 1137 | 1137 | result_index += 1; |
| ... | ... | @@ -1152,8 +1152,8 @@ pub fn relativePosix(allocator: *Allocator, from: []const u8, to: []const u8) ![ |
| 1152 | 1152 | const resolved_to = try resolvePosix(allocator, &[_][]const u8{to}); |
| 1153 | 1153 | defer allocator.free(resolved_to); |
| 1154 | 1154 | |
| 1155 | var from_it = mem.tokenize(resolved_from, "/"); | |
| 1156 | var to_it = mem.tokenize(resolved_to, "/"); | |
| 1155 | var from_it = mem.tokenize(u8, resolved_from, "/"); | |
| 1156 | var to_it = mem.tokenize(u8, resolved_to, "/"); | |
| 1157 | 1157 | while (true) { |
| 1158 | 1158 | const from_component = from_it.next() orelse return allocator.dupe(u8, to_it.rest()); |
| 1159 | 1159 | const to_rest = to_it.rest(); |
lib/std/net.zig+6-6| ... | ... | @@ -1130,9 +1130,9 @@ fn linuxLookupNameFromHosts( |
| 1130 | 1130 | }, |
| 1131 | 1131 | else => |e| return e, |
| 1132 | 1132 | }) |line| { |
| 1133 | const no_comment_line = mem.split(line, "#").next().?; | |
| 1133 | const no_comment_line = mem.split(u8, line, "#").next().?; | |
| 1134 | 1134 | |
| 1135 | var line_it = mem.tokenize(no_comment_line, " \t"); | |
| 1135 | var line_it = mem.tokenize(u8, no_comment_line, " \t"); | |
| 1136 | 1136 | const ip_text = line_it.next() orelse continue; |
| 1137 | 1137 | var first_name_text: ?[]const u8 = null; |
| 1138 | 1138 | while (line_it.next()) |name_text| { |
| ... | ... | @@ -1211,7 +1211,7 @@ fn linuxLookupNameFromDnsSearch( |
| 1211 | 1211 | mem.copy(u8, canon.items, canon_name); |
| 1212 | 1212 | try canon.append('.'); |
| 1213 | 1213 | |
| 1214 | var tok_it = mem.tokenize(search, " \t"); | |
| 1214 | var tok_it = mem.tokenize(u8, search, " \t"); | |
| 1215 | 1215 | while (tok_it.next()) |tok| { |
| 1216 | 1216 | canon.shrinkRetainingCapacity(canon_name.len + 1); |
| 1217 | 1217 | try canon.appendSlice(tok); |
| ... | ... | @@ -1328,13 +1328,13 @@ fn getResolvConf(allocator: *mem.Allocator, rc: *ResolvConf) !void { |
| 1328 | 1328 | }, |
| 1329 | 1329 | else => |e| return e, |
| 1330 | 1330 | }) |line| { |
| 1331 | const no_comment_line = mem.split(line, "#").next().?; | |
| 1332 | var line_it = mem.tokenize(no_comment_line, " \t"); | |
| 1331 | const no_comment_line = mem.split(u8, line, "#").next().?; | |
| 1332 | var line_it = mem.tokenize(u8, no_comment_line, " \t"); | |
| 1333 | 1333 | |
| 1334 | 1334 | const token = line_it.next() orelse continue; |
| 1335 | 1335 | if (mem.eql(u8, token, "options")) { |
| 1336 | 1336 | while (line_it.next()) |sub_tok| { |
| 1337 | var colon_it = mem.split(sub_tok, ":"); | |
| 1337 | var colon_it = mem.split(u8, sub_tok, ":"); | |
| 1338 | 1338 | const name = colon_it.next().?; |
| 1339 | 1339 | const value_txt = colon_it.next() orelse continue; |
| 1340 | 1340 | const value = std.fmt.parseInt(u8, value_txt, 10) catch |err| switch (err) { |
lib/std/os.zig+1-1| ... | ... | @@ -1378,7 +1378,7 @@ pub fn execvpeZ_expandArg0( |
| 1378 | 1378 | // Use of MAX_PATH_BYTES here is valid as the path_buf will be passed |
| 1379 | 1379 | // directly to the operating system in execveZ. |
| 1380 | 1380 | var path_buf: [MAX_PATH_BYTES]u8 = undefined; |
| 1381 | var it = mem.tokenize(PATH, ":"); | |
| 1381 | var it = mem.tokenize(u8, PATH, ":"); | |
| 1382 | 1382 | var seen_eacces = false; |
| 1383 | 1383 | var err: ExecveError = undefined; |
| 1384 | 1384 |
lib/std/process.zig+1-1| ... | ... | @@ -109,7 +109,7 @@ pub fn getEnvMap(allocator: *Allocator) !BufMap { |
| 109 | 109 | |
| 110 | 110 | for (environ) |env| { |
| 111 | 111 | const pair = mem.spanZ(env); |
| 112 | var parts = mem.split(pair, "="); | |
| 112 | var parts = mem.split(u8, pair, "="); | |
| 113 | 113 | const key = parts.next().?; |
| 114 | 114 | const value = parts.next().?; |
| 115 | 115 | try result.put(key, value); |
lib/std/zig/cross_target.zig+5-5| ... | ... | @@ -233,7 +233,7 @@ pub const CrossTarget = struct { |
| 233 | 233 | .dynamic_linker = DynamicLinker.init(args.dynamic_linker), |
| 234 | 234 | }; |
| 235 | 235 | |
| 236 | var it = mem.split(args.arch_os_abi, "-"); | |
| 236 | var it = mem.split(u8, args.arch_os_abi, "-"); | |
| 237 | 237 | const arch_name = it.next().?; |
| 238 | 238 | const arch_is_native = mem.eql(u8, arch_name, "native"); |
| 239 | 239 | if (!arch_is_native) { |
| ... | ... | @@ -251,7 +251,7 @@ pub const CrossTarget = struct { |
| 251 | 251 | |
| 252 | 252 | const opt_abi_text = it.next(); |
| 253 | 253 | if (opt_abi_text) |abi_text| { |
| 254 | var abi_it = mem.split(abi_text, "."); | |
| 254 | var abi_it = mem.split(u8, abi_text, "."); | |
| 255 | 255 | const abi = std.meta.stringToEnum(Target.Abi, abi_it.next().?) orelse |
| 256 | 256 | return error.UnknownApplicationBinaryInterface; |
| 257 | 257 | result.abi = abi; |
| ... | ... | @@ -699,7 +699,7 @@ pub const CrossTarget = struct { |
| 699 | 699 | } |
| 700 | 700 | |
| 701 | 701 | fn parseOs(result: *CrossTarget, diags: *ParseOptions.Diagnostics, text: []const u8) !void { |
| 702 | var it = mem.split(text, "."); | |
| 702 | var it = mem.split(u8, text, "."); | |
| 703 | 703 | const os_name = it.next().?; |
| 704 | 704 | diags.os_name = os_name; |
| 705 | 705 | const os_is_native = mem.eql(u8, os_name, "native"); |
| ... | ... | @@ -757,7 +757,7 @@ pub const CrossTarget = struct { |
| 757 | 757 | .linux, |
| 758 | 758 | .dragonfly, |
| 759 | 759 | => { |
| 760 | var range_it = mem.split(version_text, "..."); | |
| 760 | var range_it = mem.split(u8, version_text, "..."); | |
| 761 | 761 | |
| 762 | 762 | const min_text = range_it.next().?; |
| 763 | 763 | const min_ver = SemVer.parse(min_text) catch |err| switch (err) { |
| ... | ... | @@ -777,7 +777,7 @@ pub const CrossTarget = struct { |
| 777 | 777 | }, |
| 778 | 778 | |
| 779 | 779 | .windows => { |
| 780 | var range_it = mem.split(version_text, "..."); | |
| 780 | var range_it = mem.split(u8, version_text, "..."); | |
| 781 | 781 | |
| 782 | 782 | const min_text = range_it.next().?; |
| 783 | 783 | const min_ver = std.meta.stringToEnum(Target.Os.WindowsVersion, min_text) orelse |
lib/std/zig/system.zig+3-3| ... | ... | @@ -44,7 +44,7 @@ pub const NativePaths = struct { |
| 44 | 44 | defer allocator.free(nix_cflags_compile); |
| 45 | 45 | |
| 46 | 46 | is_nix = true; |
| 47 | var it = mem.tokenize(nix_cflags_compile, " "); | |
| 47 | var it = mem.tokenize(u8, nix_cflags_compile, " "); | |
| 48 | 48 | while (true) { |
| 49 | 49 | const word = it.next() orelse break; |
| 50 | 50 | if (mem.eql(u8, word, "-isystem")) { |
| ... | ... | @@ -69,7 +69,7 @@ pub const NativePaths = struct { |
| 69 | 69 | defer allocator.free(nix_ldflags); |
| 70 | 70 | |
| 71 | 71 | is_nix = true; |
| 72 | var it = mem.tokenize(nix_ldflags, " "); | |
| 72 | var it = mem.tokenize(u8, nix_ldflags, " "); | |
| 73 | 73 | while (true) { |
| 74 | 74 | const word = it.next() orelse break; |
| 75 | 75 | if (mem.eql(u8, word, "-rpath")) { |
| ... | ... | @@ -839,7 +839,7 @@ pub const NativeTargetInfo = struct { |
| 839 | 839 | error.Overflow => return error.InvalidElfFile, |
| 840 | 840 | }; |
| 841 | 841 | const rpath_list = mem.spanZ(std.meta.assumeSentinel(strtab[rpoff_usize..].ptr, 0)); |
| 842 | var it = mem.tokenize(rpath_list, ":"); | |
| 842 | var it = mem.tokenize(u8, rpath_list, ":"); | |
| 843 | 843 | while (it.next()) |rpath| { |
| 844 | 844 | var dir = fs.cwd().openDir(rpath, .{}) catch |err| switch (err) { |
| 845 | 845 | error.NameTooLong => unreachable, |
src/Cache.zig+2-2| ... | ... | @@ -356,7 +356,7 @@ pub const Manifest = struct { |
| 356 | 356 | |
| 357 | 357 | const input_file_count = self.files.items.len; |
| 358 | 358 | var any_file_changed = false; |
| 359 | var line_iter = mem.tokenize(file_contents, "\n"); | |
| 359 | var line_iter = mem.tokenize(u8, file_contents, "\n"); | |
| 360 | 360 | var idx: usize = 0; |
| 361 | 361 | while (line_iter.next()) |line| { |
| 362 | 362 | defer idx += 1; |
| ... | ... | @@ -373,7 +373,7 @@ pub const Manifest = struct { |
| 373 | 373 | break :blk new; |
| 374 | 374 | }; |
| 375 | 375 | |
| 376 | var iter = mem.tokenize(line, " "); | |
| 376 | var iter = mem.tokenize(u8, line, " "); | |
| 377 | 377 | const size = iter.next() orelse return error.InvalidFormat; |
| 378 | 378 | const inode = iter.next() orelse return error.InvalidFormat; |
| 379 | 379 | const mtime_nsec_str = iter.next() orelse return error.InvalidFormat; |
src/Compilation.zig+2-2| ... | ... | @@ -3341,7 +3341,7 @@ pub fn hasSharedLibraryExt(filename: []const u8) bool { |
| 3341 | 3341 | return true; |
| 3342 | 3342 | } |
| 3343 | 3343 | // Look for .so.X, .so.X.Y, .so.X.Y.Z |
| 3344 | var it = mem.split(filename, "."); | |
| 3344 | var it = mem.split(u8, filename, "."); | |
| 3345 | 3345 | _ = it.next().?; |
| 3346 | 3346 | var so_txt = it.next() orelse return false; |
| 3347 | 3347 | while (!mem.eql(u8, so_txt, "so")) { |
| ... | ... | @@ -4086,7 +4086,7 @@ fn updateStage1Module(comp: *Compilation, main_progress_node: *std.Progress.Node |
| 4086 | 4086 | }; |
| 4087 | 4087 | |
| 4088 | 4088 | if (directory.handle.readFileAlloc(comp.gpa, libs_txt_basename, 10 * 1024 * 1024)) |libs_txt| { |
| 4089 | var it = mem.tokenize(libs_txt, "\n"); | |
| 4089 | var it = mem.tokenize(u8, libs_txt, "\n"); | |
| 4090 | 4090 | while (it.next()) |lib_name| { |
| 4091 | 4091 | try comp.stage1AddLinkLib(lib_name); |
| 4092 | 4092 | } |
src/codegen.zig+1-1| ... | ... | @@ -3656,7 +3656,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type { |
| 3656 | 3656 | } |
| 3657 | 3657 | |
| 3658 | 3658 | { |
| 3659 | var iter = std.mem.tokenize(asm_source, "\n\r"); | |
| 3659 | var iter = std.mem.tokenize(u8, asm_source, "\n\r"); | |
| 3660 | 3660 | while (iter.next()) |ins| { |
| 3661 | 3661 | if (mem.eql(u8, ins, "syscall")) { |
| 3662 | 3662 | try self.code.appendSlice(&[_]u8{ 0x0f, 0x05 }); |
src/glibc.zig+7-7| ... | ... | @@ -107,7 +107,7 @@ pub fn loadMetaData(gpa: *Allocator, zig_lib_dir: std.fs.Dir) LoadMetaDataError! |
| 107 | 107 | defer gpa.free(abi_txt_contents); |
| 108 | 108 | |
| 109 | 109 | { |
| 110 | var it = mem.tokenize(vers_txt_contents, "\r\n"); | |
| 110 | var it = mem.tokenize(u8, vers_txt_contents, "\r\n"); | |
| 111 | 111 | var line_i: usize = 1; |
| 112 | 112 | while (it.next()) |line| : (line_i += 1) { |
| 113 | 113 | const prefix = "GLIBC_"; |
| ... | ... | @@ -124,10 +124,10 @@ pub fn loadMetaData(gpa: *Allocator, zig_lib_dir: std.fs.Dir) LoadMetaDataError! |
| 124 | 124 | } |
| 125 | 125 | } |
| 126 | 126 | { |
| 127 | var file_it = mem.tokenize(fns_txt_contents, "\r\n"); | |
| 127 | var file_it = mem.tokenize(u8, fns_txt_contents, "\r\n"); | |
| 128 | 128 | var line_i: usize = 1; |
| 129 | 129 | while (file_it.next()) |line| : (line_i += 1) { |
| 130 | var line_it = mem.tokenize(line, " "); | |
| 130 | var line_it = mem.tokenize(u8, line, " "); | |
| 131 | 131 | const fn_name = line_it.next() orelse { |
| 132 | 132 | std.log.err("fns.txt:{d}: expected function name", .{line_i}); |
| 133 | 133 | return error.ZigInstallationCorrupt; |
| ... | ... | @@ -147,7 +147,7 @@ pub fn loadMetaData(gpa: *Allocator, zig_lib_dir: std.fs.Dir) LoadMetaDataError! |
| 147 | 147 | } |
| 148 | 148 | } |
| 149 | 149 | { |
| 150 | var file_it = mem.split(abi_txt_contents, "\n"); | |
| 150 | var file_it = mem.split(u8, abi_txt_contents, "\n"); | |
| 151 | 151 | var line_i: usize = 0; |
| 152 | 152 | while (true) { |
| 153 | 153 | const ver_list_base: []VerList = blk: { |
| ... | ... | @@ -155,9 +155,9 @@ pub fn loadMetaData(gpa: *Allocator, zig_lib_dir: std.fs.Dir) LoadMetaDataError! |
| 155 | 155 | if (line.len == 0) break; |
| 156 | 156 | line_i += 1; |
| 157 | 157 | const ver_list_base = try arena.alloc(VerList, all_functions.items.len); |
| 158 | var line_it = mem.tokenize(line, " "); | |
| 158 | var line_it = mem.tokenize(u8, line, " "); | |
| 159 | 159 | while (line_it.next()) |target_string| { |
| 160 | var component_it = mem.tokenize(target_string, "-"); | |
| 160 | var component_it = mem.tokenize(u8, target_string, "-"); | |
| 161 | 161 | const arch_name = component_it.next() orelse { |
| 162 | 162 | std.log.err("abi.txt:{d}: expected arch name", .{line_i}); |
| 163 | 163 | return error.ZigInstallationCorrupt; |
| ... | ... | @@ -203,7 +203,7 @@ pub fn loadMetaData(gpa: *Allocator, zig_lib_dir: std.fs.Dir) LoadMetaDataError! |
| 203 | 203 | .versions = undefined, |
| 204 | 204 | .len = 0, |
| 205 | 205 | }; |
| 206 | var line_it = mem.tokenize(line, " "); | |
| 206 | var line_it = mem.tokenize(u8, line, " "); | |
| 207 | 207 | while (line_it.next()) |version_index_string| { |
| 208 | 208 | if (ver_list.len >= ver_list.versions.len) { |
| 209 | 209 | // If this happens with legit data, increase the array len in the type. |
src/libc_installation.zig+5-5| ... | ... | @@ -60,10 +60,10 @@ pub const LibCInstallation = struct { |
| 60 | 60 | const contents = try std.fs.cwd().readFileAlloc(allocator, libc_file, std.math.maxInt(usize)); |
| 61 | 61 | defer allocator.free(contents); |
| 62 | 62 | |
| 63 | var it = std.mem.tokenize(contents, "\n"); | |
| 63 | var it = std.mem.tokenize(u8, contents, "\n"); | |
| 64 | 64 | while (it.next()) |line| { |
| 65 | 65 | if (line.len == 0 or line[0] == '#') continue; |
| 66 | var line_it = std.mem.split(line, "="); | |
| 66 | var line_it = std.mem.split(u8, line, "="); | |
| 67 | 67 | const name = line_it.next() orelse { |
| 68 | 68 | log.err("missing equal sign after field name\n", .{}); |
| 69 | 69 | return error.ParseError; |
| ... | ... | @@ -298,7 +298,7 @@ pub const LibCInstallation = struct { |
| 298 | 298 | }, |
| 299 | 299 | } |
| 300 | 300 | |
| 301 | var it = std.mem.tokenize(exec_res.stderr, "\n\r"); | |
| 301 | var it = std.mem.tokenize(u8, exec_res.stderr, "\n\r"); | |
| 302 | 302 | var search_paths = std.ArrayList([]const u8).init(allocator); |
| 303 | 303 | defer search_paths.deinit(); |
| 304 | 304 | while (it.next()) |line| { |
| ... | ... | @@ -616,7 +616,7 @@ fn ccPrintFileName(args: CCPrintFileNameOptions) ![:0]u8 { |
| 616 | 616 | }, |
| 617 | 617 | } |
| 618 | 618 | |
| 619 | var it = std.mem.tokenize(exec_res.stdout, "\n\r"); | |
| 619 | var it = std.mem.tokenize(u8, exec_res.stdout, "\n\r"); | |
| 620 | 620 | const line = it.next() orelse return error.LibCRuntimeNotFound; |
| 621 | 621 | // When this command fails, it returns exit code 0 and duplicates the input file name. |
| 622 | 622 | // So we detect failure by checking if the output matches exactly the input. |
| ... | ... | @@ -695,7 +695,7 @@ fn appendCcExe(args: *std.ArrayList([]const u8), skip_cc_env_var: bool) !void { |
| 695 | 695 | return; |
| 696 | 696 | }; |
| 697 | 697 | // Respect space-separated flags to the C compiler. |
| 698 | var it = std.mem.tokenize(cc_env_var, " "); | |
| 698 | var it = std.mem.tokenize(u8, cc_env_var, " "); | |
| 699 | 699 | while (it.next()) |arg| { |
| 700 | 700 | try args.append(arg); |
| 701 | 701 | } |
src/link/MachO/Dylib.zig+1-1| ... | ... | @@ -106,7 +106,7 @@ pub const Id = struct { |
| 106 | 106 | var out: u32 = 0; |
| 107 | 107 | var values: [3][]const u8 = undefined; |
| 108 | 108 | |
| 109 | var split = mem.split(string, "."); | |
| 109 | var split = mem.split(u8, string, "."); | |
| 110 | 110 | var count: u4 = 0; |
| 111 | 111 | while (split.next()) |value| { |
| 112 | 112 | if (count > 2) { |
src/main.zig+2-2| ... | ... | @@ -1200,7 +1200,7 @@ fn buildOutputType( |
| 1200 | 1200 | }, |
| 1201 | 1201 | .rdynamic => rdynamic = true, |
| 1202 | 1202 | .wl => { |
| 1203 | var split_it = mem.split(it.only_arg, ","); | |
| 1203 | var split_it = mem.split(u8, it.only_arg, ","); | |
| 1204 | 1204 | while (split_it.next()) |linker_arg| { |
| 1205 | 1205 | // Handle nested-joined args like `-Wl,-rpath=foo`. |
| 1206 | 1206 | // Must be prefixed with 1 or 2 dashes. |
| ... | ... | @@ -3655,7 +3655,7 @@ pub const ClangArgIterator = struct { |
| 3655 | 3655 | defer allocator.free(resp_contents); |
| 3656 | 3656 | // TODO is there a specification for this file format? Let's find it and make this parsing more robust |
| 3657 | 3657 | // at the very least I'm guessing this needs to handle quotes and `#` comments. |
| 3658 | var it = mem.tokenize(resp_contents, " \t\r\n"); | |
| 3658 | var it = mem.tokenize(u8, resp_contents, " \t\r\n"); | |
| 3659 | 3659 | var resp_arg_list = std.ArrayList([]const u8).init(allocator); |
| 3660 | 3660 | defer resp_arg_list.deinit(); |
| 3661 | 3661 | { |
src/test.zig+2-2| ... | ... | @@ -228,7 +228,7 @@ pub const TestContext = struct { |
| 228 | 228 | continue; |
| 229 | 229 | } |
| 230 | 230 | // example: "file.zig:1:2: error: bad thing happened" |
| 231 | var it = std.mem.split(err_msg_line, ":"); | |
| 231 | var it = std.mem.split(u8, err_msg_line, ":"); | |
| 232 | 232 | const src_path = it.next() orelse @panic("missing colon"); |
| 233 | 233 | const line_text = it.next() orelse @panic("missing line"); |
| 234 | 234 | const col_text = it.next() orelse @panic("missing column"); |
| ... | ... | @@ -779,7 +779,7 @@ pub const TestContext = struct { |
| 779 | 779 | } |
| 780 | 780 | var ok = true; |
| 781 | 781 | if (case.expect_exact) { |
| 782 | var err_iter = std.mem.split(result.stderr, "\n"); | |
| 782 | var err_iter = std.mem.split(u8, result.stderr, "\n"); | |
| 783 | 783 | var i: usize = 0; |
| 784 | 784 | ok = while (err_iter.next()) |line| : (i += 1) { |
| 785 | 785 | if (i >= case_error_list.len) break false; |
test/behavior/bugs/6456.zig+1-1| ... | ... | @@ -13,7 +13,7 @@ test "issue 6456" { |
| 13 | 13 | comptime { |
| 14 | 14 | var fields: []const StructField = &[0]StructField{}; |
| 15 | 15 | |
| 16 | var it = std.mem.tokenize(text, "\n"); | |
| 16 | var it = std.mem.tokenize(u8, text, "\n"); | |
| 17 | 17 | while (it.next()) |name| { |
| 18 | 18 | fields = fields ++ &[_]StructField{StructField{ |
| 19 | 19 | .alignment = 0, |
test/tests.zig+1-1| ... | ... | @@ -768,7 +768,7 @@ pub const StackTracesContext = struct { |
| 768 | 768 | var buf = ArrayList(u8).init(b.allocator); |
| 769 | 769 | defer buf.deinit(); |
| 770 | 770 | if (stderr.len != 0 and stderr[stderr.len - 1] == '\n') stderr = stderr[0 .. stderr.len - 1]; |
| 771 | var it = mem.split(stderr, "\n"); | |
| 771 | var it = mem.split(u8, stderr, "\n"); | |
| 772 | 772 | process_lines: while (it.next()) |line| { |
| 773 | 773 | if (line.len == 0) continue; |
| 774 | 774 |
tools/update_glibc.zig+4-4| ... | ... | @@ -188,9 +188,9 @@ pub fn main() !void { |
| 188 | 188 | std.debug.warn("unable to open {s}: {}\n", .{ abi_list_filename, err }); |
| 189 | 189 | std.process.exit(1); |
| 190 | 190 | }; |
| 191 | var lines_it = std.mem.tokenize(contents, "\n"); | |
| 191 | var lines_it = std.mem.tokenize(u8, contents, "\n"); | |
| 192 | 192 | while (lines_it.next()) |line| { |
| 193 | var tok_it = std.mem.tokenize(line, " "); | |
| 193 | var tok_it = std.mem.tokenize(u8, line, " "); | |
| 194 | 194 | const ver = tok_it.next().?; |
| 195 | 195 | const name = tok_it.next().?; |
| 196 | 196 | const category = tok_it.next().?; |
| ... | ... | @@ -319,8 +319,8 @@ pub fn strCmpLessThan(context: void, a: []const u8, b: []const u8) bool { |
| 319 | 319 | pub fn versionLessThan(context: void, a: []const u8, b: []const u8) bool { |
| 320 | 320 | _ = context; |
| 321 | 321 | const sep_chars = "GLIBC_."; |
| 322 | var a_tokens = std.mem.tokenize(a, sep_chars); | |
| 323 | var b_tokens = std.mem.tokenize(b, sep_chars); | |
| 322 | var a_tokens = std.mem.tokenize(u8, a, sep_chars); | |
| 323 | var b_tokens = std.mem.tokenize(u8, b, sep_chars); | |
| 324 | 324 | |
| 325 | 325 | while (true) { |
| 326 | 326 | const a_next = a_tokens.next(); |
tools/update_spirv_features.zig+1-1| ... | ... | @@ -19,7 +19,7 @@ const Version = struct { |
| 19 | 19 | minor: u32, |
| 20 | 20 | |
| 21 | 21 | fn parse(str: []const u8) !Version { |
| 22 | var it = std.mem.split(str, "."); | |
| 22 | var it = std.mem.split(u8, str, "."); | |
| 23 | 23 | |
| 24 | 24 | const major = it.next() orelse return error.InvalidVersion; |
| 25 | 25 | const minor = it.next() orelse return error.InvalidVersion; |