class Gio::InetAddress

Overview

#GInetAddress represents an IPv4 or IPv6 internet address. Use g_resolver_lookup_by_name() or g_resolver_lookup_by_name_async() to look up the #GInetAddress for a hostname. Use g_resolver_lookup_by_address() or g_resolver_lookup_by_address_async() to look up the hostname for a #GInetAddress.

To actually connect to a remote host, you will need a #GInetSocketAddress (which includes a #GInetAddress as well as a port number).

Defined in:

lib/gi-crystal/src/auto/gio-2.0/inet_address.cr

Constructors

Class Method Summary

Instance Method Summary

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 : UInt32 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(pointer : Pointer(Void), transfer : GICrystal::Transfer)
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 #

Initialize a new InetAddress.


def self.new(*, bytes : Pointer(Void)? = nil, family : Gio::SocketFamily? = nil, is_any : Bool? = nil, is_link_local : Bool? = nil, is_loopback : Bool? = nil, is_mc_global : Bool? = nil, is_mc_link_local : Bool? = nil, is_mc_node_local : Bool? = nil, is_mc_org_local : Bool? = nil, is_mc_site_local : Bool? = nil, is_multicast : Bool? = nil, is_site_local : Bool? = nil) #

def self.new_any(family : Gio::SocketFamily) : self #

Creates a #GInetAddress for the "any" address (unassigned/"don't care") for @family.


def self.new_from_bytes(bytes : Enumerable(UInt8), family : Gio::SocketFamily) : self #

Creates a new #GInetAddress from the given @family and @bytes. @bytes should be 4 bytes for %G_SOCKET_FAMILY_IPV4 and 16 bytes for %G_SOCKET_FAMILY_IPV6.


def self.new_from_string(string : String) : self? #

Parses @string as an IP address and creates a new #GInetAddress.


def self.new_loopback(family : Gio::SocketFamily) : self #

Creates a #GInetAddress for the loopback address for @family.


Class Method Detail

def self.g_type : UInt64 #

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


Instance Method Detail

def bytes : Pointer(Void) #

def bytes=(value : Pointer(Void)) : Pointer(Void) #

def equal(other_address : Gio::InetAddress) : Bool #

Checks if two #GInetAddress instances are equal, e.g. the same address.


def family : Gio::SocketFamily #

Gets @address's family


def family=(value : Gio::SocketFamily) : Gio::SocketFamily #

def is_any : Bool #

Tests whether @address is the "any" address for its family.


def is_any? : Bool #

def is_link_local : Bool #

Tests whether @address is a link-local address (that is, if it identifies a host on a local network that is not connected to the Internet).


def is_link_local? : Bool #

def is_loopback : Bool #

Tests whether @address is the loopback address for its family.


def is_loopback? : Bool #

def is_mc_global : Bool #

Tests whether @address is a global multicast address.


def is_mc_global? : Bool #

def is_mc_link_local : Bool #

Tests whether @address is a link-local multicast address.


def is_mc_link_local? : Bool #

def is_mc_node_local : Bool #

Tests whether @address is a node-local multicast address.


def is_mc_node_local? : Bool #

def is_mc_org_local : Bool #

Tests whether @address is an organization-local multicast address.


def is_mc_org_local? : Bool #

def is_mc_site_local : Bool #

Tests whether @address is a site-local multicast address.


def is_mc_site_local? : Bool #

def is_multicast : Bool #

Tests whether @address is a multicast address.


def is_multicast? : Bool #

def is_site_local : Bool #

Tests whether @address is a site-local address such as 10.0.0.1 (that is, the address identifies a host on a local network that can not be reached directly from the Internet, but which may have outgoing Internet connectivity via a NAT or firewall).


def is_site_local? : Bool #

def native_size : UInt64 #

Gets the size of the native raw binary address for @address. This is the size of the data that you get from g_inet_address_to_bytes().


def to_string : String #

Converts @address to string form.