Add missing code example for Write::write_vectored

This commit is contained in:
Guillaume Gomez 2021-07-04 15:39:45 +02:00 committed by Guillaume Gomez
parent 8649737bee
commit f742cde948

View file

@ -1418,6 +1418,27 @@ pub trait Write {
/// The default implementation calls [`write`] with either the first nonempty /// The default implementation calls [`write`] with either the first nonempty
/// buffer provided, or an empty one if none exists. /// 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 /// [`write`]: Write::write
#[stable(feature = "iovec", since = "1.36.0")] #[stable(feature = "iovec", since = "1.36.0")]
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize> { fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize> {