GPollableOutputStreamInterface

The interface for pollable output streams.

The default implementation of @can_poll always returns %TRUE.

The default implementation of @write_nonblocking calls g_pollable_output_stream_is_writable(), and then calls g_output_stream_write() if it returns %TRUE. This means you only need to override it if it is possible that your @is_writable implementation may return %TRUE when the stream is not actually writable.

The default implementation of @writev_nonblocking calls g_pollable_output_stream_write_nonblocking() for each vector, and converts its return value and error (if set) to a #GPollableReturn. You should override this where possible to avoid having to allocate a #GError to return %G_IO_ERROR_WOULD_BLOCK.

Members

Variables

canPoll
int function(GPollableOutputStream* stream) canPoll;
createSource
GSource* function(GPollableOutputStream* stream, GCancellable* cancellable) createSource;
gIface
GTypeInterface gIface;

The parent interface.

isWritable
int function(GPollableOutputStream* stream) isWritable;
writeNonblocking
ptrdiff_t function(GPollableOutputStream* stream, void* buffer, size_t count, GError** err) writeNonblocking;
writevNonblocking
GPollableReturn function(GPollableOutputStream* stream, GOutputVector* vectors, size_t nVectors, size_t* bytesWritten, GError** err) writevNonblocking;

Meta

Since

2.28