[][src]Trait gio::PollableInputStreamExt

pub trait PollableInputStreamExt: 'static {
    fn can_poll(&self) -> bool;
fn is_readable(&self) -> bool; }

Trait containing all PollableInputStream methods.

Implementors

ConverterInputStream, MemoryInputStream, PollableInputStream, UnixInputStream

Required methods

fn can_poll(&self) -> bool

Checks if self is actually pollable. Some classes may implement PollableInputStream but have only certain instances of that class be pollable. If this method returns false, then the behavior of other PollableInputStream methods is undefined.

For any given stream, the value returned by this method is constant; a stream cannot switch from pollable to non-pollable or vice versa.

Returns

true if self is pollable, false if not.

fn is_readable(&self) -> bool

Checks if self can be read.

Note that some stream types may not be able to implement this 100% reliably, and it is possible that a call to InputStream::read after this returns true would still block. To guarantee non-blocking behavior, you should always use PollableInputStream::read_nonblocking, which will return a IOErrorEnum::WouldBlock error rather than blocking.

Returns

true if self is readable, false if not. If an error has occurred on self, this will result in PollableInputStream::is_readable returning true, and the next attempt to read will return the error.

Loading content...

Implementors

impl<O: IsA<PollableInputStream>> PollableInputStreamExt for O[src]

Loading content...