pub trait InputStreamImpl:
Send
+ ObjectImpl
+ ObjectSubclass<Type: IsA<InputStream>> {
// 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 g_input_stream_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 #GCancellable object, None
to ignore.
§Returns
Number of bytes skipped, or -1 on error
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.