std.Io: delete GenericReader, AnyReader, FixedBufferStream; and related API breakage #25077
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Follow-up from #24329.
This patchset is the last in the Writergate series. With this, the purification of
std.Iois complete, and it is now an empty vessel, ready to accept the new Io interface.std.Io.Writer.Allocating & Alignment
This API now has a new field:
This is a runtime-known alignment value. The Allocator API supports this if you use the "raw" function variants.
I tried this out in order to be able to reuse
std.Io.Writer.Allocatingin a place that needed alignment. It worked out pretty well. So well in fact, that this might be an opportunity to do something similar tostd.array_list.Aligned...Migration Guide
FixedBufferStream (reading)
⬇️
FixedBufferStream (writing)
⬇️
std.fs.Dir.readFileAllocNote that the limit has a difference; if it's reached it also returns the error. Also the error has been changed from
FileTooBigtoStreamTooLong.std.fs.File.readToEndAlloc⬇️