Thalia Archibald
41bdd2b74a
Override default Write methods for cursor-like types
2025-02-27 17:09:09 -08:00
Thalia Archibald
67cc82a704
Inline VecDeque<u8> and BorrowedCursor methods
...
All other methods in this file have #[inline] and these methods are very
similar to those of &[u8] which are already inlined here.
2025-02-27 17:07:20 -08:00
Thalia Archibald
11c174006e
Forward all default methods for I/O impls
2025-02-14 21:48:12 -08:00
Benoît du Garreau
77a7164ec9
Specialize read_exact and read_buf_exact for VecDeque
2024-10-23 10:09:24 +02:00
Nicholas Nethercote
84ac80f192
Reformat use declarations.
...
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
2024-07-29 08:26:52 +10:00
Benoît du Garreau
cfb04795a1
Fix read_exact and read_buf_exact for &[u8] and io:Cursor
2024-05-14 16:16:33 +02:00
Benoît du Garreau
23211b638a
VecDeque::read_to_string: avoid making the slices contiguous
2024-04-12 09:44:05 +02:00
Benoît du Garreau
b07c1f7f4d
Improve several Read implementations
2024-04-12 09:43:39 +02:00
Benoît du Garreau
9c64068ddb
Factor some common io::Error constants
2024-04-11 09:55:15 +02:00
Benoît du Garreau
8734809395
Specialize many implementations of Read::read_buf_exact
2024-03-12 18:28:55 +01:00
Kornel
aa581f0a0a
Remove unnecessary map_err
2024-02-21 16:31:53 +00:00
Kornel
03545161e6
Handle out of memory errors in io:Read::read_to_end()
2024-01-29 23:53:09 +00:00
Mark Rousskov
efe54e24aa
Substitute version placeholders
2023-11-15 19:40:51 -05:00
John Millikin
341c85648c
Move BorrowedBuf and BorrowedCursor from std:io to core::io
...
Assigned new feature name `core_io_borrowed_buf` to distinguish from the
`Read::read_buf` functionality in `std::io`.
2023-11-09 07:10:11 +09:00
bors
f70779b0fb
Auto merge of #110604 - a1phyr:vecdeque_buf_read, r=dtolnay
...
Implement `BufRead` for `VecDeque<u8>`
Note: it would become insta-stable
2023-10-15 19:15:01 +00:00
Dylan DPC
482e407a1f
Rollup merge of #110633 - scottmcm:more-take, r=thomcc
...
More `mem::take` in `library`
A bunch of places were using `replace(…, &mut [])`, but that can just be `take`.
2023-04-21 20:35:29 +05:30
Scott McMurray
8055bb87c5
More mem::take in library
...
A bunch of places were using `replace(…, &mut [])`, but that can just be `take`.
2023-04-20 19:54:46 -07:00
Benoît du Garreau
1e6a7b4580
Specialize some io::Read and io::Write methods for VecDeque<u8> and &[u8]
2023-04-20 16:33:01 +02:00
Benoît du Garreau
a9ece1255b
Implement BufRead for VecDeque<u8>
2023-04-20 16:02:35 +02:00
Nick Cameron
ac70aea985
Address reviewer comments
...
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2022-08-18 10:34:40 +01:00
Nick Cameron
1a2122fff0
non-linux platforms
...
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2022-08-05 17:18:51 +01:00
Nick Cameron
c1aae4d279
std::io: migrate ReadBuf to BorrowBuf/BorrowCursor
...
Signed-off-by: Nick Cameron <nrc@ncameron.org>
2022-08-04 15:29:32 +01:00
Paolo Barbolini
c71e73eb61
Remove redundant calls to reserve in impl Write for VecDeque
2022-06-09 19:10:09 +02:00
Evan Richter
8b7a3f4d53
impl Read and Write for VecDeque<u8>
...
* For read and read_buf, only the front slice of a discontiguous
VecDeque is copied. The VecDeque is advanced after reading, making any
back slice available for reading with a second call to Read::read(_buf).
* For write, the VecDeque always appends the entire slice to the end,
growing its allocation when necessary.
2022-05-19 14:59:42 -05:00
Thom Chiovoloni
554918e311
Hide Repr details from io::Error, and rework io::Error::new_const.
2022-02-04 18:47:29 -08:00
DrMeepster
98c6200b16
read_buf
2021-11-02 22:47:20 -07:00
myshylin
ed8a775b71
Forwarding implementation for Seek trait's stream_position method
2021-06-07 19:21:22 -04:00
Mara Bos
7b71719faf
Use io::Error::new_const everywhere to avoid allocations.
2021-03-21 20:22:38 +01:00
Joel Höner
ab8995bbca
Generalize Write impl for Vec<u8> to Vec<u8, A>
...
As discussed in the issue tracker for the wg-allocators working group[1], updating this implementation for allocator support was most likely just forgotten in the original PR.
[1]: https://github.com/rust-lang/wg-allocators/issues/86
2021-03-07 16:22:53 +01:00
Ian Jackson
db5d697004
std: impl of Write for &mut [u8]: document the buffer full error
...
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
2020-12-04 18:38:44 +00:00
Mara Bos
72e96604c0
Remove io::LocalOutput and use Arc<Mutex<dyn>> for local streams.
2020-11-10 21:57:05 +01:00
Tyler Mandry
d0d0e78208
Capture output from threads spawned in tests
...
Fixes #42474 .
2020-10-22 18:15:44 -07:00
Lzu Tao
a4e926daee
std: move "mod tests/benches" to separate files
...
Also doing fmt inplace as requested.
2020-08-31 02:56:59 +00:00
mark
2c31b45ae8
mv std libs to library/
2020-07-27 19:51:13 -05:00