UnixInputStream

open class UnixInputStream(pointer: <Error class: unknown class><<Error class: unknown class>>) : InputStream, FileDescriptorBased, PollableInputStream

GUnixInputStream implements class@Gio.InputStream for reading from a UNIX file descriptor, including asynchronous operations. (If the file descriptor refers to a socket or pipe, this will use poll() to do asynchronous I/O. If it refers to a regular file, it will fall back to doing asynchronous I/O in another thread.)

Note that <gio/gunixinputstream.h> belongs to the UNIX-specific GIO interfaces, thus you have to use the gio-unix-2.0.pc pkg-config file or the GioUnix-2.0 GIR namespace when using it.

Constructors

Link copied to clipboard
constructor(fd: <Error class: unknown class>, closeFd: Boolean)

Creates a new #GUnixInputStream for the given @fd.

constructor(pointer: <Error class: unknown class><<Error class: unknown class>>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open var closeFd: Boolean

Whether to close the file descriptor when the stream is closed.

Link copied to clipboard
open val fd: <Error class: unknown class>

The file descriptor that the stream reads from.

Link copied to clipboard
open override val gioFileDescriptorBasedPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
val gioInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gioPollableInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
val gioUnixInputStreamPointer: <Error class: unknown class><<Error class: unknown class>>

Functions

Link copied to clipboard
open fun canPoll(): Boolean

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

Link copied to clipboard
open fun clearPending()

Clears the pending flag on @stream.

Link copied to clipboard
open fun close(cancellable: Cancellable? = null): <Error class: unknown class><Boolean>

Closes the stream, releasing resources related to it.

Link copied to clipboard
open fun closeAsync(ioPriority: <Error class: unknown class>, cancellable: Cancellable? = null, callback: AsyncReadyCallback?)

Requests an asynchronous closes of the stream, releasing resources related to it. When the operation is finished @callback will be called. You can then call g_input_stream_close_finish() to get the result of the operation.

Link copied to clipboard
open fun closeFinish(result: AsyncResult): <Error class: unknown class><Boolean>

Finishes closing a stream asynchronously, started from g_input_stream_close_async().

Link copied to clipboard
open fun createSource(cancellable: Cancellable? = null): <Error class: unknown class>

Creates a #GSource that triggers when @stream can be read, or

Link copied to clipboard
open fun getFd(): <Error class: unknown class>

Gets the underlying file descriptor.

Link copied to clipboard
open fun hasPending(): Boolean

Checks if an input stream has pending actions.

Link copied to clipboard
open fun isClosed(): Boolean

Checks if an input stream is closed.

Link copied to clipboard
open fun isReadable(): Boolean

Checks if @stream can be read.

Link copied to clipboard
open fun readBytes(count: <Error class: unknown class>, cancellable: Cancellable? = null): <Error class: unknown class><<Error class: unknown class>>

Like g_input_stream_read(), this tries to read @count bytes from the stream in a blocking fashion. However, rather than reading into a user-supplied buffer, this will create a new #GBytes containing the data that was read. This may be easier to use from language bindings.

Link copied to clipboard
open fun readBytesAsync(count: <Error class: unknown class>, ioPriority: <Error class: unknown class>, cancellable: Cancellable? = null, callback: AsyncReadyCallback?)

Request an asynchronous read of @count bytes from the stream into a new #GBytes. When the operation is finished @callback will be called. You can then call g_input_stream_read_bytes_finish() to get the result of the operation.

Link copied to clipboard
open fun readBytesFinish(result: AsyncResult): <Error class: unknown class><<Error class: unknown class>>

Finishes an asynchronous stream read-into-#GBytes operation.

Link copied to clipboard
open fun readFinish(result: AsyncResult): <Error class: unknown class><Long>

Finishes an asynchronous stream read operation.

Link copied to clipboard
open fun setPending(): <Error class: unknown class><Boolean>

Sets @stream to have actions pending. If the pending flag is already set or @stream is closed, it will return false and set

Link copied to clipboard
open fun skip(count: <Error class: unknown class>, cancellable: Cancellable? = null): <Error class: unknown class><Long>

Tries to skip @count bytes from the stream. Will block during the operation.

Link copied to clipboard
open fun skipAsync(count: <Error class: unknown class>, ioPriority: <Error class: unknown class>, cancellable: Cancellable? = null, callback: AsyncReadyCallback?)

Request an asynchronous skip of @count bytes from the stream. When the operation is finished @callback will be called. You can then call g_input_stream_skip_finish() to get the result of the operation.

Link copied to clipboard
open fun skipFinish(result: AsyncResult): <Error class: unknown class><Long>

Finishes a stream skip operation.