class Gio::UnixInputStream

Overview

#GUnixInputStream implements #GInputStream 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 when using it.

Included Modules

Defined in:

auto/gio-2.0/unix_input_stream.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from module Gio::PollableInputStream

can_poll : Bool can_poll, create_source(cancellable : Gio::Cancellable?) : GLib::Source create_source, is_readable : Bool is_readable, read_nonblocking(buffer : Enumerable(UInt8), cancellable : Gio::Cancellable?) : Int64 read_nonblocking, to_unsafe to_unsafe

Instance methods inherited from module Gio::FileDescriptorBased

fd : Int32 fd, to_unsafe to_unsafe

Instance methods inherited from class Gio::InputStream

clear_pending : Nil clear_pending, close(cancellable : Gio::Cancellable?) : Bool close, close_async(io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil close_async, close_finish(result : Gio::AsyncResult) : Bool close_finish, has_pending : Bool has_pending, is_closed : Bool is_closed, read(buffer : Enumerable(UInt8), cancellable : Gio::Cancellable?) : Int64 read, read_all(buffer : Enumerable(UInt8), bytes_read : UInt64, cancellable : Gio::Cancellable?) : Bool read_all, read_all_async(buffer : Enumerable(UInt8), io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil read_all_async, read_all_finish(result : Gio::AsyncResult, bytes_read : UInt64) : Bool read_all_finish, read_async(buffer : Enumerable(UInt8), io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil read_async, read_bytes(count : UInt64, cancellable : Gio::Cancellable?) : GLib::Bytes read_bytes, read_bytes_async(count : UInt64, io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil read_bytes_async, read_bytes_finish(result : Gio::AsyncResult) : GLib::Bytes read_bytes_finish, read_finish(result : Gio::AsyncResult) : Int64 read_finish, set_pending : Bool set_pending, skip(count : UInt64, cancellable : Gio::Cancellable?) : Int64 skip, skip_async(count : UInt64, io_priority : Int32, cancellable : Gio::Cancellable?, callback : Gio::AsyncReadyCallback?, user_data : Pointer(Void)?) : Nil skip_async, skip_finish(result : Gio::AsyncResult) : Int64 skip_finish

Constructor methods inherited from class Gio::InputStream

new new

Class methods inherited from class Gio::InputStream

g_type : UInt64 g_type

Instance methods inherited from class GObject::Object

bind_property(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags) : GObject::Binding bind_property, bind_property_full(source_property : String, target : GObject::Object, target_property : String, flags : GObject::BindingFlags, transform_to : GObject::Closure, transform_from : GObject::Closure) : GObject::Binding bind_property_full, data(key : String) : Pointer(Void)? data, finalize finalize, freeze_notify : Nil freeze_notify, getv(names : Enumerable(String), values : Enumerable(_)) : Nil getv, notify(property_name : String) : Nil notify, notify_by_pspec(pspec : GObject::ParamSpec) : Nil notify_by_pspec, notify_signal notify_signal, property(property_name : String, value : _) : Nil property, qdata(quark : UInt32) : Pointer(Void)? qdata, ref_count ref_count, run_dispose : Nil run_dispose, set_data(key : String, data : Pointer(Void)?) : Nil set_data, set_property(property_name : String, value : _) : Nil set_property, steal_data(key : String) : Pointer(Void)? steal_data, steal_qdata(quark : UInt32) : Pointer(Void)? steal_qdata, thaw_notify : Nil thaw_notify, to_unsafe : Pointer(Void) to_unsafe, watch_closure(closure : GObject::Closure) : Nil watch_closure

Constructor methods inherited from class GObject::Object

cast(obj : GObject::Object) : self cast, cast?(obj : GObject::Object) : self? cast?, new new, newv(object_type : UInt64, parameters : Enumerable(GObject::Parameter)) : self newv

Class methods inherited from class GObject::Object

compat_control(what : UInt64, data : Pointer(Void)?) : UInt64 compat_control, g_type : UInt64 g_type, interface_find_property(g_iface : GObject::TypeInterface, property_name : String) : GObject::ParamSpec interface_find_property, interface_list_properties(g_iface : GObject::TypeInterface) : Enumerable(GObject::ParamSpec) interface_list_properties

Constructor Detail

def self.new(fd : Int32, close_fd : Bool) #

Creates a new #GUnixInputStream for the given @fd.

If @close_fd is %TRUE, the file descriptor will be closed when the stream is closed.


def self.new #

Initialize a new UnixInputStream.


def self.new(*, close_fd : Bool? = nil, fd : Int32? = nil) #

Class Method Detail

def self.g_type : UInt64 #

Returns the type id (GType) registered in GLib type system.


Instance Method Detail

def close_fd : Bool #

Returns whether the file descriptor of @stream will be closed when the stream is closed.


def close_fd=(close_fd : Bool) : Nil #

Sets whether the file descriptor of @stream shall be closed when the stream is closed.


def close_fd? : Bool #

def fd : Int32 #

Return the UNIX file descriptor that the stream reads from.


def fd=(value : Int32) : Int32 #