Trait gio::subclass::prelude::InputStreamImpl
source · pub trait InputStreamImpl: ObjectImpl + InputStreamImplExt + Send {
// Provided methods
fn read(
&self,
buffer: &mut [u8],
cancellable: Option<&Cancellable>
) -> Result<usize, Error> { ... }
fn close(&self, cancellable: Option<&Cancellable>) -> Result<(), Error> { ... }
fn skip(
&self,
count: usize,
cancellable: Option<&Cancellable>
) -> Result<usize, Error> { ... }
}
Provided Methods§
fn read( &self, buffer: &mut [u8], cancellable: Option<&Cancellable> ) -> Result<usize, Error>
fn close(&self, cancellable: Option<&Cancellable>) -> Result<(), Error>
sourcefn skip(
&self,
count: usize,
cancellable: Option<&Cancellable>
) -> Result<usize, Error>
fn skip( &self, count: usize, cancellable: Option<&Cancellable> ) -> Result<usize, Error>
Tries to skip count
bytes from the stream. Will block during the operation.
This is identical to InputStreamExtManual::read()
, from a behaviour standpoint,
but the bytes that are skipped are not returned to the user. Some
streams have an implementation that is more efficient than reading the data.
This function is optional for inherited classes, as the default implementation emulates it using read.
If cancellable
is not None
, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error IOErrorEnum::Cancelled
will be returned. If an
operation was partially finished when the operation was cancelled the
partial result will be returned, without an error.
count
the number of bytes that will be skipped from the stream
cancellable
optional Cancellable
object, None
to ignore.
Returns
Number of bytes skipped, or -1 on error