Io module

can_wait_readable

procedure · 1 overloadSource

Whether wait_readable works on reader, which is when its source supplies a wait_proc (a TCP stream does; a file or a pipe end does not). When it is false, wait_readable returns .UNSUPPORTED.

Example
Io :: #import "Extensions/Io";

main :: () {
    Io.io_run(() {
        near, far := Io.make_pipe();
        defer Io.close(near);
        defer Io.close(far);

        assert(!Io.can_wait_readable(Io.reader_of(near)));
    });
}

Doesn't run in the browser (skipped on wasm).

can_wait_readable :: (reader: Reader) -> bool

Whether wait_readable works on reader, which is when its source supplies a wait_proc (a TCP stream does; a file or a pipe end does not). When it is false, wait_readable returns .UNSUPPORTED.

Parameters

reader: Reader

Returns

bool
Example
Io :: #import "Extensions/Io";

main :: () {
    Io.io_run(() {
        near, far := Io.make_pipe();
        defer Io.close(near);
        defer Io.close(far);

        assert(!Io.can_wait_readable(Io.reader_of(near)));
    });
}

Doesn't run in the browser (skipped on wasm).

See also