Struct otter_api_tests::io::Take 1.0.0[−][src]
pub struct Take<T> { /* fields omitted */ }
Reader adaptor which limits the bytes read from an underlying reader.
This struct is generally created by calling take
on a reader.
Please see the documentation of take
for more details.
Implementations
impl<T> Take<T>
[src]
pub fn limit(&self) -> u64
[src]
Returns the number of bytes that can be read before this instance will return EOF.
Note
This instance may reach EOF
after reading fewer bytes than indicated by
this method if the underlying Read
instance reaches EOF.
Examples
use std::io; use std::io::prelude::*; use std::fs::File; fn main() -> io::Result<()> { let f = File::open("foo.txt")?; // read at most five bytes let handle = f.take(5); println!("limit: {}", handle.limit()); Ok(()) }
pub fn set_limit(&mut self, limit: u64)
1.27.0[src]
Sets the number of bytes that can be read before this instance will
return EOF. This is the same as constructing a new Take
instance, so
the amount of bytes read and the previous limit value don’t matter when
calling this method.
Examples
use std::io; use std::io::prelude::*; use std::fs::File; fn main() -> io::Result<()> { let f = File::open("foo.txt")?; // read at most five bytes let mut handle = f.take(5); handle.set_limit(10); assert_eq!(handle.limit(), 10); Ok(()) }
pub fn into_inner(self) -> T
1.15.0[src]
Consumes the Take
, returning the wrapped reader.
Examples
use std::io; use std::io::prelude::*; use std::fs::File; fn main() -> io::Result<()> { let mut file = File::open("foo.txt")?; let mut buffer = [0; 5]; let mut handle = file.take(5); handle.read(&mut buffer)?; let file = handle.into_inner(); Ok(()) }
pub fn get_ref(&self) -> &TⓘNotable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
1.20.0[src]
Notable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
Gets a reference to the underlying reader.
Examples
use std::io; use std::io::prelude::*; use std::fs::File; fn main() -> io::Result<()> { let mut file = File::open("foo.txt")?; let mut buffer = [0; 5]; let mut handle = file.take(5); handle.read(&mut buffer)?; let file = handle.get_ref(); Ok(()) }
pub fn get_mut(&mut self) -> &mut TⓘNotable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
1.20.0[src]
Notable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
Gets a mutable reference to the underlying reader.
Care should be taken to avoid modifying the internal I/O state of the
underlying reader as doing so may corrupt the internal limit of this
Take
.
Examples
use std::io; use std::io::prelude::*; use std::fs::File; fn main() -> io::Result<()> { let mut file = File::open("foo.txt")?; let mut buffer = [0; 5]; let mut handle = file.take(5); handle.read(&mut buffer)?; let file = handle.get_mut(); Ok(()) }
Trait Implementations
impl<T> BufRead for Take<T> where
T: BufRead,
[src]
T: BufRead,
pub fn fill_buf(&mut self) -> Result<&[u8], Error>
[src]
pub fn consume(&mut self, amt: usize)
[src]
pub fn read_until(
&mut self,
byte: u8,
buf: &mut Vec<u8, Global>
) -> Result<usize, Error>
[src]
&mut self,
byte: u8,
buf: &mut Vec<u8, Global>
) -> Result<usize, Error>
pub fn read_line(&mut self, buf: &mut String) -> Result<usize, Error>
[src]
pub fn split(self, byte: u8) -> Split<Self>ⓘ
[src]
pub fn lines(self) -> Lines<Self>ⓘ
[src]
impl<T> Debug for Take<T> where
T: Debug,
[src]
T: Debug,
impl<T> Read for Take<T> where
T: Read,
[src]
T: Read,
pub fn read(&mut self, buf: &mut [u8]) -> Result<usize, Error>
[src]
pub unsafe fn initializer(&self) -> Initializer
[src]
pub fn read_to_end(&mut self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
[src]
pub fn read_vectored(
&mut self,
bufs: &mut [IoSliceMut<'_>]
) -> Result<usize, Error>
1.36.0[src]
&mut self,
bufs: &mut [IoSliceMut<'_>]
) -> Result<usize, Error>
pub fn is_read_vectored(&self) -> bool
[src]
pub fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>
[src]
pub fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>
1.6.0[src]
pub fn by_ref(&mut self) -> &mut SelfⓘNotable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
[src]
Notable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
pub fn bytes(self) -> Bytes<Self>ⓘ
[src]
pub fn chain<R>(self, next: R) -> Chain<Self, R>ⓘ where
R: Read,
[src]
R: Read,
pub fn take(self, limit: u64) -> Take<Self>ⓘ
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for Take<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for Take<T> where
T: Send,
T: Send,
impl<T> Sync for Take<T> where
T: Sync,
T: Sync,
impl<T> Unpin for Take<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for Take<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow(&self) -> &TⓘNotable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
[src]
Notable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut TⓘNotable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
[src]
Notable traits for &'_ mut R
impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;
impl<T> Downcast for T where
T: Any,
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘNotable traits for Box<R, Global>
impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<F, A> Future for Box<F, A> where
A: Allocator + 'static,
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
A: Allocator,
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;
Notable traits for Box<R, Global>
impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<F, A> Future for Box<F, A> where
A: Allocator + 'static,
F: Future + Unpin + ?Sized, type Output = <F as Future>::Output;impl<I, A> Iterator for Box<I, A> where
A: Allocator,
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn as_any(&self) -> &(dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
impl<T> DowncastSync for T where
T: Any + Send + Sync,
T: Any + Send + Sync,
impl<A> DynCastExt for A
pub fn dyn_cast<T>(
self
) -> Result<<A as DynCastExtHelper<T>>::Target, <A as DynCastExtHelper<T>>::Source> where
T: ?Sized,
A: DynCastExtHelper<T>,
self
) -> Result<<A as DynCastExtHelper<T>>::Target, <A as DynCastExtHelper<T>>::Source> where
T: ?Sized,
A: DynCastExtHelper<T>,
pub fn dyn_upcast<T>(self) -> <A as DynCastExtAdvHelper<T, T>>::Target where
T: ?Sized,
A: DynCastExtAdvHelper<T, T, Source = <A as DynCastExtAdvHelper<T, T>>::Target>,
T: ?Sized,
A: DynCastExtAdvHelper<T, T, Source = <A as DynCastExtAdvHelper<T, T>>::Target>,
pub fn dyn_cast_adv<F, T>(
self
) -> Result<<A as DynCastExtAdvHelper<F, T>>::Target, <A as DynCastExtAdvHelper<F, T>>::Source> where
T: ?Sized,
A: DynCastExtAdvHelper<F, T>,
F: ?Sized,
self
) -> Result<<A as DynCastExtAdvHelper<F, T>>::Target, <A as DynCastExtAdvHelper<F, T>>::Source> where
T: ?Sized,
A: DynCastExtAdvHelper<F, T>,
F: ?Sized,
pub fn dyn_cast_with_config<C>(
self
) -> Result<<A as DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>>::Target, <A as DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>>::Source> where
C: DynCastConfig,
A: DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>,
self
) -> Result<<A as DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>>::Target, <A as DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>>::Source> where
C: DynCastConfig,
A: DynCastExtAdvHelper<<C as DynCastConfig>::Source, <C as DynCastConfig>::Target>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<R> ReadBytesExt for R where
R: Read + ?Sized,
R: Read + ?Sized,
pub fn read_u8(&mut self) -> Result<u8, Error>
pub fn read_i8(&mut self) -> Result<i8, Error>
pub fn read_u16<T>(&mut self) -> Result<u16, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i16<T>(&mut self) -> Result<i16, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u24<T>(&mut self) -> Result<u32, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i24<T>(&mut self) -> Result<i32, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u32<T>(&mut self) -> Result<u32, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i32<T>(&mut self) -> Result<i32, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u48<T>(&mut self) -> Result<u64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i48<T>(&mut self) -> Result<i64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u64<T>(&mut self) -> Result<u64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i64<T>(&mut self) -> Result<i64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u128<T>(&mut self) -> Result<u128, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i128<T>(&mut self) -> Result<i128, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_uint<T>(&mut self, nbytes: usize) -> Result<u64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_int<T>(&mut self, nbytes: usize) -> Result<i64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_uint128<T>(&mut self, nbytes: usize) -> Result<u128, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_int128<T>(&mut self, nbytes: usize) -> Result<i128, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_f32<T>(&mut self) -> Result<f32, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_f64<T>(&mut self) -> Result<f64, Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u16_into<T>(&mut self, dst: &mut [u16]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u32_into<T>(&mut self, dst: &mut [u32]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u64_into<T>(&mut self, dst: &mut [u64]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_u128_into<T>(&mut self, dst: &mut [u128]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i8_into(&mut self, dst: &mut [i8]) -> Result<(), Error>
pub fn read_i16_into<T>(&mut self, dst: &mut [i16]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i32_into<T>(&mut self, dst: &mut [i32]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i64_into<T>(&mut self, dst: &mut [i64]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_i128_into<T>(&mut self, dst: &mut [i128]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_f32_into<T>(&mut self, dst: &mut [f32]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_f32_into_unchecked<T>(
&mut self,
dst: &mut [f32]
) -> Result<(), Error> where
T: ByteOrder,
&mut self,
dst: &mut [f32]
) -> Result<(), Error> where
T: ByteOrder,
pub fn read_f64_into<T>(&mut self, dst: &mut [f64]) -> Result<(), Error> where
T: ByteOrder,
T: ByteOrder,
pub fn read_f64_into_unchecked<T>(
&mut self,
dst: &mut [f64]
) -> Result<(), Error> where
T: ByteOrder,
&mut self,
dst: &mut [f64]
) -> Result<(), Error> where
T: ByteOrder,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,