Rollup merge of #86864 - GuillaumeGomez:example-write-vectored, r=JohnTitor

Add missing code example for Write::write_vectored
This commit is contained in:
Yuki Okushi 2021-07-05 07:13:28 +09:00 committed by GitHub
commit 0e4c4cd076
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1418,6 +1418,27 @@ pub trait Write {
/// The default implementation calls [`write`] with either the first nonempty
/// buffer provided, or an empty one if none exists.
///
/// # Examples
///
/// ```no_run
/// use std::io::IoSlice;
/// use std::io::prelude::*;
/// use std::fs::File;
///
/// fn main() -> std::io::Result<()> {
/// let mut data1 = [1; 8];
/// let mut data2 = [15; 8];
/// let io_slice1 = IoSlice::new(&mut data1);
/// let io_slice2 = IoSlice::new(&mut data2);
///
/// let mut buffer = File::create("foo.txt")?;
///
/// // Writes some prefix of the byte string, not necessarily all of it.
/// buffer.write_vectored(&[io_slice1, io_slice2])?;
/// Ok(())
/// }
/// ```
///
/// [`write`]: Write::write
#[stable(feature = "iovec", since = "1.36.0")]
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize> {