gi-gio
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gio.Objects.SocketAddress

Description

GSocketAddress is the equivalent of `struct sockaddr`) and its subtypes in the BSD sockets API. This is an abstract class; use InetSocketAddress for internet sockets, or UnixSocketAddress for UNIX domain sockets.

Synopsis

Exported types

newtype SocketAddress Source #

Memory-managed wrapper type.

Instances

Instances details
Eq SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

GObject SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

ManagedPtrNewtype SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

TypedObject SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

Methods

glibType :: IO GType #

HasParentTypes SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

HasAttributeList SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

(info ~ ResolveSocketAddressMethod t SocketAddress, OverloadedMethod info SocketAddress p, HasField t SocketAddress p) => HasField (t :: Symbol) SocketAddress (p :: Type) Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

Methods

getField :: SocketAddress -> p #

(info ~ ResolveSocketAddressMethod t SocketAddress, OverloadedMethodInfo info SocketAddress) => IsLabel t (MethodProxy info SocketAddress) Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

(info ~ ResolveSocketAddressMethod t SocketAddress, OverloadedMethod info SocketAddress p) => IsLabel t (SocketAddress -> p) Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

Methods

fromLabel :: SocketAddress -> p #

IsGValue (Maybe SocketAddress) Source #

Convert SocketAddress to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttributeList SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type ParentTypes SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type SignalList SocketAddress Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

class (GObject o, IsDescendantOf SocketAddress o) => IsSocketAddress o Source #

Type class for types which can be safely cast to SocketAddress, for instance with toSocketAddress.

Instances

Instances details
(GObject o, IsDescendantOf SocketAddress o) => IsSocketAddress o Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

toSocketAddress :: (MonadIO m, IsSocketAddress o) => o -> m SocketAddress Source #

Cast to SocketAddress, for types for which this is known to be safe. For general casts, use castTo.

Methods

type family ResolveSocketAddressMethod (t :: Symbol) o where ... Source #

Equations

ResolveSocketAddressMethod "bindProperty" o = ObjectBindPropertyMethodInfo 
ResolveSocketAddressMethod "bindPropertyFull" o = ObjectBindPropertyFullMethodInfo 
ResolveSocketAddressMethod "enumerate" o = SocketConnectableEnumerateMethodInfo 
ResolveSocketAddressMethod "forceFloating" o = ObjectForceFloatingMethodInfo 
ResolveSocketAddressMethod "freezeNotify" o = ObjectFreezeNotifyMethodInfo 
ResolveSocketAddressMethod "getv" o = ObjectGetvMethodInfo 
ResolveSocketAddressMethod "isFloating" o = ObjectIsFloatingMethodInfo 
ResolveSocketAddressMethod "notify" o = ObjectNotifyMethodInfo 
ResolveSocketAddressMethod "notifyByPspec" o = ObjectNotifyByPspecMethodInfo 
ResolveSocketAddressMethod "proxyEnumerate" o = SocketConnectableProxyEnumerateMethodInfo 
ResolveSocketAddressMethod "ref" o = ObjectRefMethodInfo 
ResolveSocketAddressMethod "refSink" o = ObjectRefSinkMethodInfo 
ResolveSocketAddressMethod "runDispose" o = ObjectRunDisposeMethodInfo 
ResolveSocketAddressMethod "stealData" o = ObjectStealDataMethodInfo 
ResolveSocketAddressMethod "stealQdata" o = ObjectStealQdataMethodInfo 
ResolveSocketAddressMethod "thawNotify" o = ObjectThawNotifyMethodInfo 
ResolveSocketAddressMethod "toNative" o = SocketAddressToNativeMethodInfo 
ResolveSocketAddressMethod "toString" o = SocketConnectableToStringMethodInfo 
ResolveSocketAddressMethod "unref" o = ObjectUnrefMethodInfo 
ResolveSocketAddressMethod "watchClosure" o = ObjectWatchClosureMethodInfo 
ResolveSocketAddressMethod "getData" o = ObjectGetDataMethodInfo 
ResolveSocketAddressMethod "getFamily" o = SocketAddressGetFamilyMethodInfo 
ResolveSocketAddressMethod "getNativeSize" o = SocketAddressGetNativeSizeMethodInfo 
ResolveSocketAddressMethod "getProperty" o = ObjectGetPropertyMethodInfo 
ResolveSocketAddressMethod "getQdata" o = ObjectGetQdataMethodInfo 
ResolveSocketAddressMethod "setData" o = ObjectSetDataMethodInfo 
ResolveSocketAddressMethod "setDataFull" o = ObjectSetDataFullMethodInfo 
ResolveSocketAddressMethod "setProperty" o = ObjectSetPropertyMethodInfo 
ResolveSocketAddressMethod l o = MethodResolutionFailed l o :: Type 

getFamily

socketAddressGetFamily Source #

Arguments

:: (HasCallStack, MonadIO m, IsSocketAddress a) 
=> a

address: a SocketAddress

-> m SocketFamily

Returns: the socket family type of address

Gets the socket family type of address.

Since: 2.22

getNativeSize

socketAddressGetNativeSize Source #

Arguments

:: (HasCallStack, MonadIO m, IsSocketAddress a) 
=> a

address: a SocketAddress

-> m Int64

Returns: the size of the native struct sockaddr that address represents

Gets the size of address's native struct sockaddr. You can use this to allocate memory to pass to socketAddressToNative.

Since: 2.22

newFromNative

socketAddressNewFromNative Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Ptr ()

native: a pointer to a struct sockaddr

-> CSize

len: the size of the memory location pointed to by native

-> m SocketAddress

Returns: a new SocketAddress if native could successfully be converted, otherwise Nothing

Creates a SocketAddress subclass corresponding to the native struct sockaddr native.

Since: 2.22

toNative

data SocketAddressToNativeMethodInfo Source #

Instances

Instances details
(signature ~ (Ptr () -> CSize -> m ()), MonadIO m, IsSocketAddress a) => OverloadedMethod SocketAddressToNativeMethodInfo a signature Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

Methods

overloadedMethod :: a -> signature #

OverloadedMethodInfo SocketAddressToNativeMethodInfo (a :: Type) Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

socketAddressToNative Source #

Arguments

:: (HasCallStack, MonadIO m, IsSocketAddress a) 
=> a

address: a SocketAddress

-> Ptr ()

dest: a pointer to a memory location that will contain the native struct sockaddr

-> CSize

destlen: the size of dest. Must be at least as large as socketAddressGetNativeSize

-> m ()

(Can throw GError)

Converts a SocketAddress to a native struct sockaddr, which can be passed to low-level functions like connect() or bind().

If not enough space is available, a IOErrorEnumNoSpace error is returned. If the address type is not known on the system then a IOErrorEnumNotSupported error is returned.

Since: 2.22

Properties

family

The family of the socket address.

Since: 2.22

data SocketAddressFamilyPropertyInfo Source #

Instances

Instances details
AttrInfo SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrAllowedOps SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrBaseTypeConstraint SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrGetType SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrLabel SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrOrigin SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrSetTypeConstraint SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrTransferType SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

type AttrTransferTypeConstraint SocketAddressFamilyPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.SocketAddress

getSocketAddressFamily :: (MonadIO m, IsSocketAddress o) => o -> m SocketFamily Source #

Get the value of the “family” property. When overloading is enabled, this is equivalent to

get socketAddress #family