aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/Build.zig6
-rw-r--r--lib/std/Build/Step.zig2
-rw-r--r--lib/std/Build/Step/ObjCopy.zig2
-rw-r--r--lib/std/Build/Step/Run.zig21
-rw-r--r--lib/std/Io.zig2
-rw-r--r--lib/std/Io/Writer.zig9
-rw-r--r--lib/std/Io/test.zig2
-rw-r--r--lib/std/Io/tty.zig7
-rw-r--r--lib/std/Progress.zig18
-rw-r--r--lib/std/Random/benchmark.zig6
-rw-r--r--lib/std/Thread.zig4
-rw-r--r--lib/std/crypto/Certificate/Bundle.zig8
-rw-r--r--lib/std/crypto/Certificate/Bundle/macos.zig2
-rw-r--r--lib/std/crypto/benchmark.zig8
-rw-r--r--lib/std/debug.zig6
-rw-r--r--lib/std/debug/ElfFile.zig4
-rw-r--r--lib/std/debug/Info.zig2
-rw-r--r--lib/std/debug/Pdb.zig2
-rw-r--r--lib/std/debug/SelfInfo/Windows.zig2
-rw-r--r--lib/std/debug/simple_panic.zig2
-rw-r--r--lib/std/dynamic_library.zig2
-rw-r--r--lib/std/fs/test.zig8
-rw-r--r--lib/std/hash/benchmark.zig5
-rw-r--r--lib/std/http.zig2
-rw-r--r--lib/std/pdb.zig2
-rw-r--r--lib/std/posix/test.zig18
-rw-r--r--lib/std/process/Child.zig4
-rw-r--r--lib/std/unicode/throughput_test.zig6
-rw-r--r--lib/std/zig/Zir.zig8
-rw-r--r--lib/std/zig/Zoir.zig15
-rw-r--r--lib/std/zig/llvm/Builder.zig4
-rw-r--r--lib/std/zig/perf_test.zig3
-rw-r--r--lib/std/zip.zig5
33 files changed, 105 insertions, 92 deletions
diff --git a/lib/std/Build.zig b/lib/std/Build.zig
index fcd94ce134..2755b895c2 100644
--- a/lib/std/Build.zig
+++ b/lib/std/Build.zig
@@ -1,3 +1,4 @@
+const Build = @This();
const builtin = @import("builtin");
const std = @import("std.zig");
@@ -9,13 +10,12 @@ const panic = std.debug.panic;
const assert = debug.assert;
const log = std.log;
const StringHashMap = std.StringHashMap;
-const Allocator = mem.Allocator;
+const Allocator = std.mem.Allocator;
const Target = std.Target;
const process = std.process;
const EnvMap = std.process.EnvMap;
-const File = fs.File;
+const File = std.Io.File;
const Sha256 = std.crypto.hash.sha2.Sha256;
-const Build = @This();
const ArrayList = std.ArrayList;
pub const Cache = @import("Build/Cache.zig");
diff --git a/lib/std/Build/Step.zig b/lib/std/Build/Step.zig
index acde47071d..2b1e6d8ace 100644
--- a/lib/std/Build/Step.zig
+++ b/lib/std/Build/Step.zig
@@ -667,7 +667,7 @@ fn clearZigProcess(s: *Step, gpa: Allocator) void {
}
}
-fn sendMessage(file: std.fs.File, tag: std.zig.Client.Message.Tag) !void {
+fn sendMessage(file: Io.File, tag: std.zig.Client.Message.Tag) !void {
const header: std.zig.Client.Message.Header = .{
.tag = tag,
.bytes_len = 0,
diff --git a/lib/std/Build/Step/ObjCopy.zig b/lib/std/Build/Step/ObjCopy.zig
index b5f058ddfc..4aa1c0a9dc 100644
--- a/lib/std/Build/Step/ObjCopy.zig
+++ b/lib/std/Build/Step/ObjCopy.zig
@@ -3,7 +3,7 @@ const ObjCopy = @This();
const Allocator = std.mem.Allocator;
const ArenaAllocator = std.heap.ArenaAllocator;
-const File = std.fs.File;
+const File = std.Io.File;
const InstallDir = std.Build.InstallDir;
const Step = std.Build.Step;
const elf = std.elf;
diff --git a/lib/std/Build/Step/Run.zig b/lib/std/Build/Step/Run.zig
index e66e30cc79..1df6f42a35 100644
--- a/lib/std/Build/Step/Run.zig
+++ b/lib/std/Build/Step/Run.zig
@@ -1,15 +1,16 @@
-const std = @import("std");
+const Run = @This();
const builtin = @import("builtin");
+
+const std = @import("std");
+const Io = std.Io;
const Build = std.Build;
-const Step = Build.Step;
+const Step = std.Build.Step;
const fs = std.fs;
const mem = std.mem;
const process = std.process;
-const EnvMap = process.EnvMap;
+const EnvMap = std.process.EnvMap;
const assert = std.debug.assert;
-const Path = Build.Cache.Path;
-
-const Run = @This();
+const Path = std.Build.Cache.Path;
pub const base_id: Step.Id = .run;
@@ -2095,7 +2096,7 @@ pub const CachedTestMetadata = struct {
}
};
-fn requestNextTest(in: fs.File, metadata: *TestMetadata, sub_prog_node: *?std.Progress.Node) !void {
+fn requestNextTest(in: Io.File, metadata: *TestMetadata, sub_prog_node: *?std.Progress.Node) !void {
while (metadata.next_index < metadata.names.len) {
const i = metadata.next_index;
metadata.next_index += 1;
@@ -2114,7 +2115,7 @@ fn requestNextTest(in: fs.File, metadata: *TestMetadata, sub_prog_node: *?std.Pr
}
}
-fn sendMessage(file: std.fs.File, tag: std.zig.Client.Message.Tag) !void {
+fn sendMessage(file: Io.File, tag: std.zig.Client.Message.Tag) !void {
const header: std.zig.Client.Message.Header = .{
.tag = tag,
.bytes_len = 0,
@@ -2125,7 +2126,7 @@ fn sendMessage(file: std.fs.File, tag: std.zig.Client.Message.Tag) !void {
};
}
-fn sendRunTestMessage(file: std.fs.File, tag: std.zig.Client.Message.Tag, index: u32) !void {
+fn sendRunTestMessage(file: Io.File, tag: std.zig.Client.Message.Tag, index: u32) !void {
const header: std.zig.Client.Message.Header = .{
.tag = tag,
.bytes_len = 4,
@@ -2140,7 +2141,7 @@ fn sendRunTestMessage(file: std.fs.File, tag: std.zig.Client.Message.Tag, index:
}
fn sendRunFuzzTestMessage(
- file: std.fs.File,
+ file: Io.File,
index: u32,
kind: std.Build.abi.fuzz.LimitKind,
amount_or_instance: u64,
diff --git a/lib/std/Io.zig b/lib/std/Io.zig
index 0727e3efd3..f783718cef 100644
--- a/lib/std/Io.zig
+++ b/lib/std/Io.zig
@@ -528,7 +528,7 @@ pub fn Poller(comptime StreamEnum: type) type {
/// Given an enum, returns a struct with fields of that enum, each field
/// representing an I/O stream for polling.
pub fn PollFiles(comptime StreamEnum: type) type {
- return @Struct(.auto, null, std.meta.fieldNames(StreamEnum), &@splat(std.fs.File), &@splat(.{}));
+ return @Struct(.auto, null, std.meta.fieldNames(StreamEnum), &@splat(Io.File), &@splat(.{}));
}
test {
diff --git a/lib/std/Io/Writer.zig b/lib/std/Io/Writer.zig
index 5601293cfb..3f25bc6a26 100644
--- a/lib/std/Io/Writer.zig
+++ b/lib/std/Io/Writer.zig
@@ -1,7 +1,8 @@
+const Writer = @This();
+
const builtin = @import("builtin");
const native_endian = builtin.target.cpu.arch.endian();
-const Writer = @This();
const std = @import("../std.zig");
const assert = std.debug.assert;
const Limit = std.Io.Limit;
@@ -2837,7 +2838,7 @@ test "discarding sendFile" {
const file = try tmp_dir.dir.createFile("input.txt", .{ .read = true });
defer file.close(io);
var r_buffer: [256]u8 = undefined;
- var file_writer: std.fs.File.Writer = .init(file, &r_buffer);
+ var file_writer: File.Writer = .init(file, &r_buffer);
try file_writer.interface.writeByte('h');
try file_writer.interface.flush();
@@ -2859,7 +2860,7 @@ test "allocating sendFile" {
const file = try tmp_dir.dir.createFile("input.txt", .{ .read = true });
defer file.close(io);
var r_buffer: [2]u8 = undefined;
- var file_writer: std.fs.File.Writer = .init(file, &r_buffer);
+ var file_writer: File.Writer = .init(file, &r_buffer);
try file_writer.interface.writeAll("abcd");
try file_writer.interface.flush();
@@ -2883,7 +2884,7 @@ test sendFileReading {
const file = try tmp_dir.dir.createFile("input.txt", .{ .read = true });
defer file.close(io);
var r_buffer: [2]u8 = undefined;
- var file_writer: std.fs.File.Writer = .init(file, &r_buffer);
+ var file_writer: File.Writer = .init(file, &r_buffer);
try file_writer.interface.writeAll("abcd");
try file_writer.interface.flush();
diff --git a/lib/std/Io/test.zig b/lib/std/Io/test.zig
index 9ea2d48ee5..b922acc333 100644
--- a/lib/std/Io/test.zig
+++ b/lib/std/Io/test.zig
@@ -10,7 +10,7 @@ const expectError = std.testing.expectError;
const DefaultPrng = std.Random.DefaultPrng;
const mem = std.mem;
const fs = std.fs;
-const File = std.fs.File;
+const File = std.Io.File;
const assert = std.debug.assert;
const tmpDir = std.testing.tmpDir;
diff --git a/lib/std/Io/tty.zig b/lib/std/Io/tty.zig
index 08e0bd71f0..d1f8b576c2 100644
--- a/lib/std/Io/tty.zig
+++ b/lib/std/Io/tty.zig
@@ -1,9 +1,10 @@
-const std = @import("std");
const builtin = @import("builtin");
-const File = std.fs.File;
+const native_os = builtin.os.tag;
+
+const std = @import("std");
+const File = std.Io.File;
const process = std.process;
const windows = std.os.windows;
-const native_os = builtin.os.tag;
pub const Color = enum {
black,
diff --git a/lib/std/Progress.zig b/lib/std/Progress.zig
index 467d4754ff..d8b22c2db0 100644
--- a/lib/std/Progress.zig
+++ b/lib/std/Progress.zig
@@ -1,19 +1,21 @@
//! This API is non-allocating, non-fallible, thread-safe, and lock-free.
+const Progress = @This();
-const std = @import("std");
const builtin = @import("builtin");
+const is_big_endian = builtin.cpu.arch.endian() == .big;
+const is_windows = builtin.os.tag == .windows;
+
+const std = @import("std");
+const Io = std.Io;
const windows = std.os.windows;
const testing = std.testing;
const assert = std.debug.assert;
-const Progress = @This();
const posix = std.posix;
-const is_big_endian = builtin.cpu.arch.endian() == .big;
-const is_windows = builtin.os.tag == .windows;
const Writer = std.Io.Writer;
/// `null` if the current node (and its children) should
/// not print on update()
-terminal: std.fs.File,
+terminal: Io.File,
terminal_mode: TerminalMode,
@@ -472,7 +474,7 @@ pub fn start(options: Options) Node {
if (options.disable_printing) {
return Node.none;
}
- const stderr: std.fs.File = .stderr();
+ const stderr: Io.File = .stderr();
global_progress.terminal = stderr;
if (stderr.enableAnsiEscapeCodes()) |_| {
global_progress.terminal_mode = .ansi_escape_codes;
@@ -633,8 +635,8 @@ pub fn unlockStdErr() void {
/// Protected by `stderr_mutex`.
const stderr_writer: *Writer = &stderr_file_writer.interface;
/// Protected by `stderr_mutex`.
-var stderr_file_writer: std.fs.File.Writer = .{
- .interface = std.fs.File.Writer.initInterface(&.{}),
+var stderr_file_writer: Io.File.Writer = .{
+ .interface = Io.File.Writer.initInterface(&.{}),
.file = if (is_windows) undefined else .stderr(),
.mode = .streaming,
};
diff --git a/lib/std/Random/benchmark.zig b/lib/std/Random/benchmark.zig
index 57dc69051e..97afe23b95 100644
--- a/lib/std/Random/benchmark.zig
+++ b/lib/std/Random/benchmark.zig
@@ -1,7 +1,9 @@
// zig run -O ReleaseFast --zig-lib-dir ../.. benchmark.zig
-const std = @import("std");
const builtin = @import("builtin");
+
+const std = @import("std");
+const Io = std.Io;
const time = std.time;
const Timer = time.Timer;
const Random = std.Random;
@@ -123,7 +125,7 @@ fn mode(comptime x: comptime_int) comptime_int {
pub fn main() !void {
var stdout_buffer: [0x100]u8 = undefined;
- var stdout_writer = std.fs.File.stdout().writer(&stdout_buffer);
+ var stdout_writer = Io.File.stdout().writer(&stdout_buffer);
const stdout = &stdout_writer.interface;
var buffer: [1024]u8 = undefined;
diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig
index 9f532c3bec..8d8e5979df 100644
--- a/lib/std/Thread.zig
+++ b/lib/std/Thread.zig
@@ -175,7 +175,7 @@ pub const SetNameError = error{
Unsupported,
Unexpected,
InvalidWtf8,
-} || posix.PrctlError || posix.WriteError || std.fs.File.OpenError || std.fmt.BufPrintError;
+} || posix.PrctlError || posix.WriteError || Io.File.OpenError || std.fmt.BufPrintError;
pub fn setName(self: Thread, io: Io, name: []const u8) SetNameError!void {
if (name.len > max_name_len) return error.NameTooLong;
@@ -293,7 +293,7 @@ pub fn setName(self: Thread, io: Io, name: []const u8) SetNameError!void {
pub const GetNameError = error{
Unsupported,
Unexpected,
-} || posix.PrctlError || posix.ReadError || std.fs.File.OpenError || std.fmt.BufPrintError;
+} || posix.PrctlError || posix.ReadError || Io.File.OpenError || std.fmt.BufPrintError;
/// On Windows, the result is encoded as [WTF-8](https://wtf-8.codeberg.page/).
/// On other platforms, the result is an opaque sequence of bytes with no particular encoding.
diff --git a/lib/std/crypto/Certificate/Bundle.zig b/lib/std/crypto/Certificate/Bundle.zig
index 9541e01db5..1d21918b5c 100644
--- a/lib/std/crypto/Certificate/Bundle.zig
+++ b/lib/std/crypto/Certificate/Bundle.zig
@@ -171,7 +171,7 @@ fn rescanWindows(cb: *Bundle, gpa: Allocator, io: Io, now: Io.Timestamp) RescanW
cb.bytes.shrinkAndFree(gpa, cb.bytes.items.len);
}
-pub const AddCertsFromDirPathError = fs.File.OpenError || AddCertsFromDirError;
+pub const AddCertsFromDirPathError = Io.File.OpenError || AddCertsFromDirError;
pub fn addCertsFromDirPath(
cb: *Bundle,
@@ -212,7 +212,7 @@ pub fn addCertsFromDir(cb: *Bundle, gpa: Allocator, io: Io, now: Io.Timestamp, i
}
}
-pub const AddCertsFromFilePathError = fs.File.OpenError || AddCertsFromFileError || Io.Clock.Error;
+pub const AddCertsFromFilePathError = Io.File.OpenError || AddCertsFromFileError || Io.Clock.Error;
pub fn addCertsFromFilePathAbsolute(
cb: *Bundle,
@@ -242,8 +242,8 @@ pub fn addCertsFromFilePath(
}
pub const AddCertsFromFileError = Allocator.Error ||
- fs.File.GetSeekPosError ||
- fs.File.ReadError ||
+ Io.File.GetSeekPosError ||
+ Io.File.ReadError ||
ParseCertError ||
std.base64.Error ||
error{ CertificateAuthorityBundleTooBig, MissingEndCertificateMarker, Streaming };
diff --git a/lib/std/crypto/Certificate/Bundle/macos.zig b/lib/std/crypto/Certificate/Bundle/macos.zig
index d32f1be8e0..473505ac51 100644
--- a/lib/std/crypto/Certificate/Bundle/macos.zig
+++ b/lib/std/crypto/Certificate/Bundle/macos.zig
@@ -6,7 +6,7 @@ const mem = std.mem;
const Allocator = std.mem.Allocator;
const Bundle = @import("../Bundle.zig");
-pub const RescanMacError = Allocator.Error || fs.File.OpenError || fs.File.ReadError || fs.File.SeekError || Bundle.ParseCertError || error{EndOfStream};
+pub const RescanMacError = Allocator.Error || Io.File.OpenError || Io.File.ReadError || Io.File.SeekError || Bundle.ParseCertError || error{EndOfStream};
pub fn rescanMac(cb: *Bundle, gpa: Allocator, io: Io, now: Io.Timestamp) RescanMacError!void {
cb.bytes.clearRetainingCapacity();
diff --git a/lib/std/crypto/benchmark.zig b/lib/std/crypto/benchmark.zig
index 54024f070e..1b71110be5 100644
--- a/lib/std/crypto/benchmark.zig
+++ b/lib/std/crypto/benchmark.zig
@@ -1,10 +1,12 @@
// zig run -O ReleaseFast --zig-lib-dir ../.. benchmark.zig
-const std = @import("std");
const builtin = @import("builtin");
+
+const std = @import("std");
+const Io = std.Io;
const mem = std.mem;
const time = std.time;
-const Timer = time.Timer;
+const Timer = std.time.Timer;
const crypto = std.crypto;
const KiB = 1024;
@@ -504,7 +506,7 @@ fn mode(comptime x: comptime_int) comptime_int {
pub fn main() !void {
// Size of buffer is about size of printed message.
var stdout_buffer: [0x100]u8 = undefined;
- var stdout_writer = std.fs.File.stdout().writer(&stdout_buffer);
+ var stdout_writer = Io.File.stdout().writer(&stdout_buffer);
const stdout = &stdout_writer.interface;
var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
diff --git a/lib/std/debug.zig b/lib/std/debug.zig
index 0cb96ed593..97741ecb40 100644
--- a/lib/std/debug.zig
+++ b/lib/std/debug.zig
@@ -8,7 +8,7 @@ const posix = std.posix;
const fs = std.fs;
const testing = std.testing;
const Allocator = mem.Allocator;
-const File = std.fs.File;
+const File = std.Io.File;
const windows = std.os.windows;
const builtin = @import("builtin");
@@ -575,7 +575,7 @@ pub fn defaultPanic(
// A panic happened while trying to print a previous panic message.
// We're still holding the mutex but that's fine as we're going to
// call abort().
- fs.File.stderr().writeAll("aborting due to recursive panic\n") catch {};
+ File.stderr().writeAll("aborting due to recursive panic\n") catch {};
},
else => {}, // Panicked while printing the recursive panic message.
}
@@ -1596,7 +1596,7 @@ pub fn defaultHandleSegfault(addr: ?usize, name: []const u8, opt_ctx: ?CpuContex
// A segfault happened while trying to print a previous panic message.
// We're still holding the mutex but that's fine as we're going to
// call abort().
- fs.File.stderr().writeAll("aborting due to recursive panic\n") catch {};
+ File.stderr().writeAll("aborting due to recursive panic\n") catch {};
},
else => {}, // Panicked while printing the recursive panic message.
}
diff --git a/lib/std/debug/ElfFile.zig b/lib/std/debug/ElfFile.zig
index 92bcca1bcf..5dbae18130 100644
--- a/lib/std/debug/ElfFile.zig
+++ b/lib/std/debug/ElfFile.zig
@@ -123,7 +123,7 @@ pub const LoadError = error{
pub fn load(
gpa: Allocator,
- elf_file: std.fs.File,
+ elf_file: Io.File,
opt_build_id: ?[]const u8,
di_search_paths: *const DebugInfoSearchPaths,
) LoadError!ElfFile {
@@ -423,7 +423,7 @@ const LoadInnerResult = struct {
};
fn loadInner(
arena: Allocator,
- elf_file: std.fs.File,
+ elf_file: Io.File,
opt_crc: ?u32,
) (LoadError || error{ CrcMismatch, Streaming, Canceled })!LoadInnerResult {
const mapped_mem: []align(std.heap.page_size_min) const u8 = mapped: {
diff --git a/lib/std/debug/Info.zig b/lib/std/debug/Info.zig
index 9268ca0247..da7656e626 100644
--- a/lib/std/debug/Info.zig
+++ b/lib/std/debug/Info.zig
@@ -27,7 +27,7 @@ coverage: *Coverage,
pub const LoadError = error{
MissingDebugInfo,
UnsupportedDebugInfo,
-} || std.fs.File.OpenError || ElfFile.LoadError || MachOFile.Error || std.debug.Dwarf.ScanError;
+} || Io.File.OpenError || ElfFile.LoadError || MachOFile.Error || std.debug.Dwarf.ScanError;
pub fn load(
gpa: Allocator,
diff --git a/lib/std/debug/Pdb.zig b/lib/std/debug/Pdb.zig
index c10b361f72..3ecfd1b363 100644
--- a/lib/std/debug/Pdb.zig
+++ b/lib/std/debug/Pdb.zig
@@ -1,5 +1,5 @@
const std = @import("../std.zig");
-const File = std.fs.File;
+const File = std.Io.File;
const Allocator = std.mem.Allocator;
const pdb = std.pdb;
const assert = std.debug.assert;
diff --git a/lib/std/debug/SelfInfo/Windows.zig b/lib/std/debug/SelfInfo/Windows.zig
index 557f3901eb..3af7223293 100644
--- a/lib/std/debug/SelfInfo/Windows.zig
+++ b/lib/std/debug/SelfInfo/Windows.zig
@@ -204,7 +204,7 @@ const Module = struct {
coff_section_headers: []coff.SectionHeader,
const MappedFile = struct {
- file: fs.File,
+ file: Io.File,
section_handle: windows.HANDLE,
section_view: []const u8,
fn deinit(mf: *const MappedFile, io: Io) void {
diff --git a/lib/std/debug/simple_panic.zig b/lib/std/debug/simple_panic.zig
index 45e97777c4..f6ff77e04f 100644
--- a/lib/std/debug/simple_panic.zig
+++ b/lib/std/debug/simple_panic.zig
@@ -15,7 +15,7 @@ pub fn call(msg: []const u8, ra: ?usize) noreturn {
@branchHint(.cold);
_ = ra;
std.debug.lockStdErr();
- const stderr: std.fs.File = .stderr();
+ const stderr: std.Io.File = .stderr();
stderr.writeAll(msg) catch {};
@trap();
}
diff --git a/lib/std/dynamic_library.zig b/lib/std/dynamic_library.zig
index c91056b0ab..ca36d5cbb9 100644
--- a/lib/std/dynamic_library.zig
+++ b/lib/std/dynamic_library.zig
@@ -225,7 +225,7 @@ pub const ElfDynLib = struct {
const fd = try resolveFromName(io, path);
defer posix.close(fd);
- const file: std.fs.File = .{ .handle = fd };
+ const file: Io.File = .{ .handle = fd };
const stat = try file.stat();
const size = std.math.cast(usize, stat.size) orelse return error.FileTooBig;
diff --git a/lib/std/fs/test.zig b/lib/std/fs/test.zig
index 15b8e9b558..f770ddd30e 100644
--- a/lib/std/fs/test.zig
+++ b/lib/std/fs/test.zig
@@ -12,7 +12,7 @@ const posix = std.posix;
const ArenaAllocator = std.heap.ArenaAllocator;
const Dir = std.fs.Dir;
-const File = std.fs.File;
+const File = std.Io.File;
const tmpDir = testing.tmpDir;
const SymLinkFlags = std.fs.Dir.SymLinkFlags;
@@ -2231,7 +2231,7 @@ test "read file non vectored" {
const file = try tmp_dir.dir.createFile("input.txt", .{ .read = true });
defer file.close(io);
{
- var file_writer: std.fs.File.Writer = .init(file, &.{});
+ var file_writer: File.Writer = .init(file, &.{});
try file_writer.interface.writeAll(contents);
try file_writer.interface.flush();
}
@@ -2263,7 +2263,7 @@ test "seek keeping partial buffer" {
const file = try tmp_dir.dir.createFile("input.txt", .{ .read = true });
defer file.close(io);
{
- var file_writer: std.fs.File.Writer = .init(file, &.{});
+ var file_writer: File.Writer = .init(file, &.{});
try file_writer.interface.writeAll(contents);
try file_writer.interface.flush();
}
@@ -2325,7 +2325,7 @@ test "seekTo flushes buffered data" {
defer file.close(io);
{
var buf: [16]u8 = undefined;
- var file_writer = std.fs.File.writer(file, &buf);
+ var file_writer = File.writer(file, &buf);
try file_writer.interface.writeAll(contents);
try file_writer.seekTo(8);
diff --git a/lib/std/hash/benchmark.zig b/lib/std/hash/benchmark.zig
index a21d6e9ada..6744b87fac 100644
--- a/lib/std/hash/benchmark.zig
+++ b/lib/std/hash/benchmark.zig
@@ -1,7 +1,8 @@
// zig run -O ReleaseFast --zig-lib-dir ../.. benchmark.zig
+const builtin = @import("builtin");
const std = @import("std");
-const builtin = @import("builtin");
+const Io = std.Io;
const time = std.time;
const Timer = time.Timer;
const hash = std.hash;
@@ -354,7 +355,7 @@ fn mode(comptime x: comptime_int) comptime_int {
pub fn main() !void {
var stdout_buffer: [0x100]u8 = undefined;
- var stdout_writer = std.fs.File.stdout().writer(&stdout_buffer);
+ var stdout_writer = Io.File.stdout().writer(&stdout_buffer);
const stdout = &stdout_writer.interface;
var buffer: [1024]u8 = undefined;
diff --git a/lib/std/http.zig b/lib/std/http.zig
index a768372ecc..291e22539b 100644
--- a/lib/std/http.zig
+++ b/lib/std/http.zig
@@ -2,7 +2,7 @@ const builtin = @import("builtin");
const std = @import("std.zig");
const assert = std.debug.assert;
const Writer = std.Io.Writer;
-const File = std.fs.File;
+const File = std.Io.File;
pub const Client = @import("http/Client.zig");
pub const Server = @import("http/Server.zig");
diff --git a/lib/std/pdb.zig b/lib/std/pdb.zig
index 36b0e04e5c..7e479de8d4 100644
--- a/lib/std/pdb.zig
+++ b/lib/std/pdb.zig
@@ -12,7 +12,7 @@ const math = std.math;
const mem = std.mem;
const coff = std.coff;
const fs = std.fs;
-const File = std.fs.File;
+const File = std.Io.File;
const debug = std.debug;
const ArrayList = std.ArrayList;
diff --git a/lib/std/posix/test.zig b/lib/std/posix/test.zig
index 8889e50ea3..82fa2c41d1 100644
--- a/lib/std/posix/test.zig
+++ b/lib/std/posix/test.zig
@@ -1,20 +1,20 @@
+const builtin = @import("builtin");
+const native_os = builtin.target.os.tag;
+
const std = @import("../std.zig");
+const Io = std.Io;
const posix = std.posix;
const testing = std.testing;
-const expect = testing.expect;
-const expectEqual = testing.expectEqual;
-const expectError = testing.expectError;
+const expect = std.testing.expect;
+const expectEqual = std.testing.expectEqual;
+const expectError = std.testing.expectError;
const fs = std.fs;
const mem = std.mem;
const elf = std.elf;
const linux = std.os.linux;
-
const a = std.testing.allocator;
-
-const builtin = @import("builtin");
const AtomicRmwOp = std.builtin.AtomicRmwOp;
const AtomicOrder = std.builtin.AtomicOrder;
-const native_os = builtin.target.os.tag;
const tmpDir = std.testing.tmpDir;
const AT = posix.AT;
@@ -663,14 +663,14 @@ test "dup & dup2" {
var file = try tmp.dir.createFile("os_dup_test", .{});
defer file.close(io);
- var duped = std.fs.File{ .handle = try posix.dup(file.handle) };
+ var duped = Io.File{ .handle = try posix.dup(file.handle) };
defer duped.close(io);
try duped.writeAll("dup");
// Tests aren't run in parallel so using the next fd shouldn't be an issue.
const new_fd = duped.handle + 1;
try posix.dup2(file.handle, new_fd);
- var dup2ed = std.fs.File{ .handle = new_fd };
+ var dup2ed = Io.File{ .handle = new_fd };
defer dup2ed.close(io);
try dup2ed.writeAll("dup2");
}
diff --git a/lib/std/process/Child.zig b/lib/std/process/Child.zig
index be3026ff10..87d2fe3ba9 100644
--- a/lib/std/process/Child.zig
+++ b/lib/std/process/Child.zig
@@ -8,7 +8,7 @@ const Io = std.Io;
const unicode = std.unicode;
const fs = std.fs;
const process = std.process;
-const File = std.fs.File;
+const File = std.Io.File;
const windows = std.os.windows;
const linux = std.os.linux;
const posix = std.posix;
@@ -1055,7 +1055,7 @@ fn forkChildErrReport(fd: i32, err: ChildProcess.SpawnError) noreturn {
fn writeIntFd(fd: i32, value: ErrInt) !void {
var buffer: [8]u8 = undefined;
- var fw: std.fs.File.Writer = .initStreaming(.{ .handle = fd }, &buffer);
+ var fw: File.Writer = .initStreaming(.{ .handle = fd }, &buffer);
fw.interface.writeInt(u64, value, .little) catch unreachable;
fw.interface.flush() catch return error.SystemResources;
}
diff --git a/lib/std/unicode/throughput_test.zig b/lib/std/unicode/throughput_test.zig
index fd3f46ec58..c02f550a4a 100644
--- a/lib/std/unicode/throughput_test.zig
+++ b/lib/std/unicode/throughput_test.zig
@@ -1,8 +1,8 @@
const std = @import("std");
+const Io = std.Io;
const time = std.time;
const unicode = std.unicode;
-
-const Timer = time.Timer;
+const Timer = std.time.Timer;
const N = 1_000_000;
@@ -41,7 +41,7 @@ fn benchmarkCodepointCount(buf: []const u8) !ResultCount {
pub fn main() !void {
// Size of buffer is about size of printed message.
var stdout_buffer: [0x100]u8 = undefined;
- var stdout_writer = std.fs.File.stdout().writer(&stdout_buffer);
+ var stdout_writer = Io.File.stdout().writer(&stdout_buffer);
const stdout = &stdout_writer.interface;
try stdout.print("short ASCII strings\n", .{});
diff --git a/lib/std/zig/Zir.zig b/lib/std/zig/Zir.zig
index 09c785613f..37ce7b4cfa 100644
--- a/lib/std/zig/Zir.zig
+++ b/lib/std/zig/Zir.zig
@@ -11,9 +11,11 @@
//! * In the future, possibly inline assembly, which needs to get parsed and
//! handled by the codegen backend, and errors reported there. However for now,
//! inline assembly is not an exception.
+const Zir = @This();
+const builtin = @import("builtin");
const std = @import("std");
-const builtin = @import("builtin");
+const Io = std.Io;
const mem = std.mem;
const Allocator = std.mem.Allocator;
const assert = std.debug.assert;
@@ -21,8 +23,6 @@ const BigIntConst = std.math.big.int.Const;
const BigIntMutable = std.math.big.int.Mutable;
const Ast = std.zig.Ast;
-const Zir = @This();
-
instructions: std.MultiArrayList(Inst).Slice,
/// In order to store references to strings in fewer bytes, we copy all
/// string bytes into here. String bytes can be null. It is up to whomever
@@ -45,7 +45,7 @@ pub const Header = extern struct {
/// it's essentially free to have a zero field here and makes the warning go away,
/// making it more likely that following Valgrind warnings will be taken seriously.
unused: u32 = 0,
- stat_inode: std.fs.File.INode,
+ stat_inode: Io.File.INode,
stat_size: u64,
stat_mtime: i128,
};
diff --git a/lib/std/zig/Zoir.zig b/lib/std/zig/Zoir.zig
index 08a7fc9639..d82b8f1861 100644
--- a/lib/std/zig/Zoir.zig
+++ b/lib/std/zig/Zoir.zig
@@ -1,6 +1,13 @@
//! Zig Object Intermediate Representation.
//! Simplified AST for the ZON (Zig Object Notation) format.
//! `ZonGen` converts `Ast` to `Zoir`.
+const Zoir = @This();
+
+const std = @import("std");
+const Io = std.Io;
+const assert = std.debug.assert;
+const Allocator = std.mem.Allocator;
+const Ast = std.zig.Ast;
nodes: std.MultiArrayList(Node.Repr).Slice,
extra: []u32,
@@ -25,7 +32,7 @@ pub const Header = extern struct {
/// making it more likely that following Valgrind warnings will be taken seriously.
unused: u64 = 0,
- stat_inode: std.fs.File.INode,
+ stat_inode: Io.File.INode,
stat_size: u64,
stat_mtime: i128,
@@ -254,9 +261,3 @@ pub const CompileError = extern struct {
assert(std.meta.hasUniqueRepresentation(Note));
}
};
-
-const std = @import("std");
-const assert = std.debug.assert;
-const Allocator = std.mem.Allocator;
-const Ast = std.zig.Ast;
-const Zoir = @This();
diff --git a/lib/std/zig/llvm/Builder.zig b/lib/std/zig/llvm/Builder.zig
index 9a52ae2c81..9ca0124f4f 100644
--- a/lib/std/zig/llvm/Builder.zig
+++ b/lib/std/zig/llvm/Builder.zig
@@ -9578,7 +9578,7 @@ pub fn asmValue(
pub fn dump(b: *Builder) void {
var buffer: [4000]u8 = undefined;
- const stderr: std.fs.File = .stderr();
+ const stderr: Io.File = .stderr();
b.printToFile(stderr, &buffer) catch {};
}
@@ -9589,7 +9589,7 @@ pub fn printToFilePath(b: *Builder, io: Io, dir: std.fs.Dir, path: []const u8) !
try b.printToFile(io, file, &buffer);
}
-pub fn printToFile(b: *Builder, file: std.fs.File, buffer: []u8) !void {
+pub fn printToFile(b: *Builder, file: Io.File, buffer: []u8) !void {
var fw = file.writer(buffer);
try print(b, &fw.interface);
try fw.interface.flush();
diff --git a/lib/std/zig/perf_test.zig b/lib/std/zig/perf_test.zig
index 1566a15d2d..da3dd42f15 100644
--- a/lib/std/zig/perf_test.zig
+++ b/lib/std/zig/perf_test.zig
@@ -1,4 +1,5 @@
const std = @import("std");
+const Io = std.Io;
const mem = std.mem;
const Tokenizer = std.zig.Tokenizer;
const fmtIntSizeBin = std.fmt.fmtIntSizeBin;
@@ -22,7 +23,7 @@ pub fn main() !void {
const bytes_per_sec = @as(u64, @intFromFloat(@floor(bytes_per_sec_float)));
var stdout_buffer: [1024]u8 = undefined;
- var stdout_writer = std.fs.File.stdout().writer(&stdout_buffer);
+ var stdout_writer = Io.File.stdout().writer(&stdout_buffer);
const stdout = &stdout_writer.interface;
try stdout.print("parsing speed: {Bi:.2}/s, {Bi:.2} used \n", .{ bytes_per_sec, memory_used });
try stdout.flush();
diff --git a/lib/std/zip.zig b/lib/std/zip.zig
index c2dbaf5b81..9588651e7f 100644
--- a/lib/std/zip.zig
+++ b/lib/std/zip.zig
@@ -4,9 +4,10 @@
//! Note that this file uses the abbreviation "cd" for "central directory"
const builtin = @import("builtin");
-const std = @import("std");
-const File = std.fs.File;
const is_le = builtin.target.cpu.arch.endian() == .little;
+
+const std = @import("std");
+const File = std.Io.File;
const Writer = std.Io.Writer;
const Reader = std.Io.Reader;
const flate = std.compress.flate;