25 Commits

Author SHA1 Message Date
Andrew Kelley
1164d5ece5 tweak std.io.Writer and followups
remove std.fs.Dir.readFileAllocOptions, replace with more flexible API
readFileIntoArrayList

remove std.fs.File.readToEndAllocOptions, replace with more flexible API
readIntoArrayList

update std.fs.File to new reader/writer API

add helper functions to std.io.Reader.Limit

replace std.io.Writer.FileLen with std.io.Reader.Limit

make offset a type rather than u64 so that it can distinguish between
streaming read and positional read

avoid an unnecessary allocation in std.zig.readSourceFileToEndAlloc when
there is a UTF-16 little endian BOM.
2025-07-01 16:35:26 -07:00
Andrew Kelley
383afd19d7 std.io.BufferedWriter: don't use ArrayList for this
it's the wrong abstraction and is only a footgun when used this way.
2025-07-01 16:35:26 -07:00
Andrew Kelley
60854795b8 array list tests passing again 2025-07-01 16:35:26 -07:00
Andrew Kelley
646454beb5 maybe it's better to track bytes written in BufferedWriter 2025-07-01 16:35:26 -07:00
Andrew Kelley
faab6d5cbf fix hello world 2025-07-01 16:35:26 -07:00
Jacob Young
1501734747 io: fix compile errors 2025-07-01 16:35:26 -07:00
Andrew Kelley
9dc0b4a98f back to the anyerror!usize vtable 2025-07-01 16:35:26 -07:00
Andrew Kelley
6ac7931bec std: hacking around with buffered reader / writer semantics
I think I'm going to back out these vtable changes in the next commit
2025-07-01 16:35:26 -07:00
Andrew Kelley
57e1fc29d2 reader interface vecs and bufferedwriter arraylist 2025-07-01 16:35:26 -07:00
Andrew Kelley
5aa8573f2b redo reader 2025-07-01 16:35:26 -07:00
Andrew Kelley
d87b59f5a5 std.fmt.format: support base 64 encoding 2025-07-01 16:35:26 -07:00
Andrew Kelley
bf00eb3006 more of the compiler updated to new Writer API 2025-07-01 16:35:26 -07:00
Andrew Kelley
09af68de80 fix duration formatting 2025-07-01 16:35:26 -07:00
Andrew Kelley
051c7af49a get std lib json tests passing 2025-07-01 16:35:26 -07:00
Andrew Kelley
7569494b45 fix byte formatted printing 2025-07-01 16:35:26 -07:00
Andrew Kelley
bb1dffcf32 much of the compiler upgraded to new API 2025-07-01 16:35:26 -07:00
Andrew Kelley
f3be721785 build runner compiling 2025-07-01 16:35:26 -07:00
Andrew Kelley
716b4489be update more of the std lib to new API 2025-07-01 16:35:26 -07:00
Andrew Kelley
221b194f28 std.io.BufferedWriter: implement hex string printing 2025-07-01 16:35:26 -07:00
Andrew Kelley
1d0495678d fixes
writeFile should be split into two
2025-07-01 16:35:25 -07:00
Andrew Kelley
35824e4822 writeSplat 2025-07-01 16:35:25 -07:00
Andrew Kelley
b26aceba7d thinking about splat being the only function 2025-07-01 16:35:25 -07:00
Andrew Kelley
5356f3a307 migrate some std lib 2025-07-01 16:35:25 -07:00
Andrew Kelley
c2fc6b0b6c ArrayListWriter 2025-07-01 16:35:25 -07:00
Andrew Kelley
00c6c836a6 std: start reworking std.io
hello world is compiling
2025-07-01 16:35:25 -07:00