{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gio.Objects.SocketClient
(
SocketClient(..) ,
IsSocketClient ,
toSocketClient ,
#if defined(ENABLE_OVERLOADING)
ResolveSocketClientMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientAddApplicationProxyMethodInfo,
#endif
socketClientAddApplicationProxy ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectMethodInfo ,
#endif
socketClientConnect ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectAsyncMethodInfo ,
#endif
socketClientConnectAsync ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectFinishMethodInfo ,
#endif
socketClientConnectFinish ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToHostMethodInfo ,
#endif
socketClientConnectToHost ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToHostAsyncMethodInfo,
#endif
socketClientConnectToHostAsync ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToHostFinishMethodInfo,
#endif
socketClientConnectToHostFinish ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToServiceMethodInfo ,
#endif
socketClientConnectToService ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToServiceAsyncMethodInfo,
#endif
socketClientConnectToServiceAsync ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToServiceFinishMethodInfo,
#endif
socketClientConnectToServiceFinish ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToUriMethodInfo ,
#endif
socketClientConnectToUri ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToUriAsyncMethodInfo ,
#endif
socketClientConnectToUriAsync ,
#if defined(ENABLE_OVERLOADING)
SocketClientConnectToUriFinishMethodInfo,
#endif
socketClientConnectToUriFinish ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetEnableProxyMethodInfo ,
#endif
socketClientGetEnableProxy ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetFamilyMethodInfo ,
#endif
socketClientGetFamily ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetLocalAddressMethodInfo ,
#endif
socketClientGetLocalAddress ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetProtocolMethodInfo ,
#endif
socketClientGetProtocol ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetProxyResolverMethodInfo ,
#endif
socketClientGetProxyResolver ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetSocketTypeMethodInfo ,
#endif
socketClientGetSocketType ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetTimeoutMethodInfo ,
#endif
socketClientGetTimeout ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetTlsMethodInfo ,
#endif
socketClientGetTls ,
#if defined(ENABLE_OVERLOADING)
SocketClientGetTlsValidationFlagsMethodInfo,
#endif
socketClientGetTlsValidationFlags ,
socketClientNew ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetEnableProxyMethodInfo ,
#endif
socketClientSetEnableProxy ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetFamilyMethodInfo ,
#endif
socketClientSetFamily ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetLocalAddressMethodInfo ,
#endif
socketClientSetLocalAddress ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetProtocolMethodInfo ,
#endif
socketClientSetProtocol ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetProxyResolverMethodInfo ,
#endif
socketClientSetProxyResolver ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetSocketTypeMethodInfo ,
#endif
socketClientSetSocketType ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetTimeoutMethodInfo ,
#endif
socketClientSetTimeout ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetTlsMethodInfo ,
#endif
socketClientSetTls ,
#if defined(ENABLE_OVERLOADING)
SocketClientSetTlsValidationFlagsMethodInfo,
#endif
socketClientSetTlsValidationFlags ,
#if defined(ENABLE_OVERLOADING)
SocketClientEnableProxyPropertyInfo ,
#endif
constructSocketClientEnableProxy ,
getSocketClientEnableProxy ,
setSocketClientEnableProxy ,
#if defined(ENABLE_OVERLOADING)
socketClientEnableProxy ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientFamilyPropertyInfo ,
#endif
constructSocketClientFamily ,
getSocketClientFamily ,
setSocketClientFamily ,
#if defined(ENABLE_OVERLOADING)
socketClientFamily ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientLocalAddressPropertyInfo ,
#endif
clearSocketClientLocalAddress ,
constructSocketClientLocalAddress ,
getSocketClientLocalAddress ,
setSocketClientLocalAddress ,
#if defined(ENABLE_OVERLOADING)
socketClientLocalAddress ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientProtocolPropertyInfo ,
#endif
constructSocketClientProtocol ,
getSocketClientProtocol ,
setSocketClientProtocol ,
#if defined(ENABLE_OVERLOADING)
socketClientProtocol ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientProxyResolverPropertyInfo ,
#endif
clearSocketClientProxyResolver ,
constructSocketClientProxyResolver ,
getSocketClientProxyResolver ,
setSocketClientProxyResolver ,
#if defined(ENABLE_OVERLOADING)
socketClientProxyResolver ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientTimeoutPropertyInfo ,
#endif
constructSocketClientTimeout ,
getSocketClientTimeout ,
setSocketClientTimeout ,
#if defined(ENABLE_OVERLOADING)
socketClientTimeout ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientTlsPropertyInfo ,
#endif
constructSocketClientTls ,
getSocketClientTls ,
setSocketClientTls ,
#if defined(ENABLE_OVERLOADING)
socketClientTls ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientTlsValidationFlagsPropertyInfo,
#endif
constructSocketClientTlsValidationFlags ,
getSocketClientTlsValidationFlags ,
setSocketClientTlsValidationFlags ,
#if defined(ENABLE_OVERLOADING)
socketClientTlsValidationFlags ,
#endif
#if defined(ENABLE_OVERLOADING)
SocketClientTypePropertyInfo ,
#endif
constructSocketClientType ,
getSocketClientType ,
setSocketClientType ,
#if defined(ENABLE_OVERLOADING)
socketClientType ,
#endif
SocketClientEventCallback ,
#if defined(ENABLE_OVERLOADING)
SocketClientEventSignalInfo ,
#endif
afterSocketClientEvent ,
onSocketClientEvent ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Callbacks as Gio.Callbacks
import {-# SOURCE #-} qualified GI.Gio.Enums as Gio.Enums
import {-# SOURCE #-} qualified GI.Gio.Flags as Gio.Flags
import {-# SOURCE #-} qualified GI.Gio.Interfaces.AsyncResult as Gio.AsyncResult
import {-# SOURCE #-} qualified GI.Gio.Interfaces.ProxyResolver as Gio.ProxyResolver
import {-# SOURCE #-} qualified GI.Gio.Interfaces.SocketConnectable as Gio.SocketConnectable
import {-# SOURCE #-} qualified GI.Gio.Objects.Cancellable as Gio.Cancellable
import {-# SOURCE #-} qualified GI.Gio.Objects.IOStream as Gio.IOStream
import {-# SOURCE #-} qualified GI.Gio.Objects.SocketAddress as Gio.SocketAddress
import {-# SOURCE #-} qualified GI.Gio.Objects.SocketConnection as Gio.SocketConnection
newtype SocketClient = SocketClient (SP.ManagedPtr SocketClient)
deriving (SocketClient -> SocketClient -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: SocketClient -> SocketClient -> Bool
$c/= :: SocketClient -> SocketClient -> Bool
== :: SocketClient -> SocketClient -> Bool
$c== :: SocketClient -> SocketClient -> Bool
Eq)
instance SP.ManagedPtrNewtype SocketClient where
toManagedPtr :: SocketClient -> ManagedPtr SocketClient
toManagedPtr (SocketClient ManagedPtr SocketClient
p) = ManagedPtr SocketClient
p
foreign import ccall "g_socket_client_get_type"
c_g_socket_client_get_type :: IO B.Types.GType
instance B.Types.TypedObject SocketClient where
glibType :: IO GType
glibType = IO GType
c_g_socket_client_get_type
instance B.Types.GObject SocketClient
class (SP.GObject o, O.IsDescendantOf SocketClient o) => IsSocketClient o
instance (SP.GObject o, O.IsDescendantOf SocketClient o) => IsSocketClient o
instance O.HasParentTypes SocketClient
type instance O.ParentTypes SocketClient = '[GObject.Object.Object]
toSocketClient :: (MIO.MonadIO m, IsSocketClient o) => o -> m SocketClient
toSocketClient :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m SocketClient
toSocketClient = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr SocketClient -> SocketClient
SocketClient
instance B.GValue.IsGValue (Maybe SocketClient) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_g_socket_client_get_type
gvalueSet_ :: Ptr GValue -> Maybe SocketClient -> IO ()
gvalueSet_ Ptr GValue
gv Maybe SocketClient
P.Nothing = forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (forall a. Ptr a
FP.nullPtr :: FP.Ptr SocketClient)
gvalueSet_ Ptr GValue
gv (P.Just SocketClient
obj) = forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr SocketClient
obj (forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe SocketClient)
gvalueGet_ Ptr GValue
gv = do
Ptr SocketClient
ptr <- forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr SocketClient)
if Ptr SocketClient
ptr forall a. Eq a => a -> a -> Bool
/= forall a. Ptr a
FP.nullPtr
then forall a. a -> Maybe a
P.Just forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr SocketClient -> SocketClient
SocketClient Ptr SocketClient
ptr
else forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveSocketClientMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveSocketClientMethod "addApplicationProxy" o = SocketClientAddApplicationProxyMethodInfo
ResolveSocketClientMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveSocketClientMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveSocketClientMethod "connect" o = SocketClientConnectMethodInfo
ResolveSocketClientMethod "connectAsync" o = SocketClientConnectAsyncMethodInfo
ResolveSocketClientMethod "connectFinish" o = SocketClientConnectFinishMethodInfo
ResolveSocketClientMethod "connectToHost" o = SocketClientConnectToHostMethodInfo
ResolveSocketClientMethod "connectToHostAsync" o = SocketClientConnectToHostAsyncMethodInfo
ResolveSocketClientMethod "connectToHostFinish" o = SocketClientConnectToHostFinishMethodInfo
ResolveSocketClientMethod "connectToService" o = SocketClientConnectToServiceMethodInfo
ResolveSocketClientMethod "connectToServiceAsync" o = SocketClientConnectToServiceAsyncMethodInfo
ResolveSocketClientMethod "connectToServiceFinish" o = SocketClientConnectToServiceFinishMethodInfo
ResolveSocketClientMethod "connectToUri" o = SocketClientConnectToUriMethodInfo
ResolveSocketClientMethod "connectToUriAsync" o = SocketClientConnectToUriAsyncMethodInfo
ResolveSocketClientMethod "connectToUriFinish" o = SocketClientConnectToUriFinishMethodInfo
ResolveSocketClientMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveSocketClientMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveSocketClientMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveSocketClientMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveSocketClientMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveSocketClientMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveSocketClientMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveSocketClientMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveSocketClientMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveSocketClientMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveSocketClientMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveSocketClientMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveSocketClientMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveSocketClientMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveSocketClientMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveSocketClientMethod "getEnableProxy" o = SocketClientGetEnableProxyMethodInfo
ResolveSocketClientMethod "getFamily" o = SocketClientGetFamilyMethodInfo
ResolveSocketClientMethod "getLocalAddress" o = SocketClientGetLocalAddressMethodInfo
ResolveSocketClientMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveSocketClientMethod "getProtocol" o = SocketClientGetProtocolMethodInfo
ResolveSocketClientMethod "getProxyResolver" o = SocketClientGetProxyResolverMethodInfo
ResolveSocketClientMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveSocketClientMethod "getSocketType" o = SocketClientGetSocketTypeMethodInfo
ResolveSocketClientMethod "getTimeout" o = SocketClientGetTimeoutMethodInfo
ResolveSocketClientMethod "getTls" o = SocketClientGetTlsMethodInfo
ResolveSocketClientMethod "getTlsValidationFlags" o = SocketClientGetTlsValidationFlagsMethodInfo
ResolveSocketClientMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveSocketClientMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveSocketClientMethod "setEnableProxy" o = SocketClientSetEnableProxyMethodInfo
ResolveSocketClientMethod "setFamily" o = SocketClientSetFamilyMethodInfo
ResolveSocketClientMethod "setLocalAddress" o = SocketClientSetLocalAddressMethodInfo
ResolveSocketClientMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveSocketClientMethod "setProtocol" o = SocketClientSetProtocolMethodInfo
ResolveSocketClientMethod "setProxyResolver" o = SocketClientSetProxyResolverMethodInfo
ResolveSocketClientMethod "setSocketType" o = SocketClientSetSocketTypeMethodInfo
ResolveSocketClientMethod "setTimeout" o = SocketClientSetTimeoutMethodInfo
ResolveSocketClientMethod "setTls" o = SocketClientSetTlsMethodInfo
ResolveSocketClientMethod "setTlsValidationFlags" o = SocketClientSetTlsValidationFlagsMethodInfo
ResolveSocketClientMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveSocketClientMethod t SocketClient, O.OverloadedMethod info SocketClient p) => OL.IsLabel t (SocketClient -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveSocketClientMethod t SocketClient, O.OverloadedMethod info SocketClient p, R.HasField t SocketClient p) => R.HasField t SocketClient p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveSocketClientMethod t SocketClient, O.OverloadedMethodInfo info SocketClient) => OL.IsLabel t (O.MethodProxy info SocketClient) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type SocketClientEventCallback =
Gio.Enums.SocketClientEvent
-> Gio.SocketConnectable.SocketConnectable
-> Maybe Gio.IOStream.IOStream
-> IO ()
type C_SocketClientEventCallback =
Ptr SocketClient ->
CUInt ->
Ptr Gio.SocketConnectable.SocketConnectable ->
Ptr Gio.IOStream.IOStream ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_SocketClientEventCallback :: C_SocketClientEventCallback -> IO (FunPtr C_SocketClientEventCallback)
wrap_SocketClientEventCallback ::
GObject a => (a -> SocketClientEventCallback) ->
C_SocketClientEventCallback
wrap_SocketClientEventCallback :: forall a.
GObject a =>
(a -> SocketClientEventCallback) -> C_SocketClientEventCallback
wrap_SocketClientEventCallback a -> SocketClientEventCallback
gi'cb Ptr SocketClient
gi'selfPtr CUInt
event Ptr SocketConnectable
connectable Ptr IOStream
connection Ptr ()
_ = do
let event' :: SocketClientEvent
event' = (forall a. Enum a => Int -> a
toEnum forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
event
SocketConnectable
connectable' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr SocketConnectable -> SocketConnectable
Gio.SocketConnectable.SocketConnectable) Ptr SocketConnectable
connectable
Maybe IOStream
maybeConnection <-
if Ptr IOStream
connection forall a. Eq a => a -> a -> Bool
== forall a. Ptr a
nullPtr
then forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Maybe a
Nothing
else do
IOStream
connection' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr IOStream -> IOStream
Gio.IOStream.IOStream) Ptr IOStream
connection
forall (m :: * -> *) a. Monad m => a -> m a
return forall a b. (a -> b) -> a -> b
$ forall a. a -> Maybe a
Just IOStream
connection'
forall a b.
(HasCallStack, ManagedPtrNewtype a) =>
Ptr a -> (a -> IO b) -> IO b
B.ManagedPtr.withTransient Ptr SocketClient
gi'selfPtr forall a b. (a -> b) -> a -> b
$ \SocketClient
gi'self -> a -> SocketClientEventCallback
gi'cb (coerce :: forall a b. Coercible a b => a -> b
Coerce.coerce SocketClient
gi'self) SocketClientEvent
event' SocketConnectable
connectable' Maybe IOStream
maybeConnection
onSocketClientEvent :: (IsSocketClient a, MonadIO m) => a -> ((?self :: a) => SocketClientEventCallback) -> m SignalHandlerId
onSocketClientEvent :: forall a (m :: * -> *).
(IsSocketClient a, MonadIO m) =>
a -> ((?self::a) => SocketClientEventCallback) -> m SignalHandlerId
onSocketClientEvent a
obj (?self::a) => SocketClientEventCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> SocketClientEventCallback
wrapped a
self = let ?self = a
self in (?self::a) => SocketClientEventCallback
cb
let wrapped' :: C_SocketClientEventCallback
wrapped' = forall a.
GObject a =>
(a -> SocketClientEventCallback) -> C_SocketClientEventCallback
wrap_SocketClientEventCallback a -> SocketClientEventCallback
wrapped
FunPtr C_SocketClientEventCallback
wrapped'' <- C_SocketClientEventCallback
-> IO (FunPtr C_SocketClientEventCallback)
mk_SocketClientEventCallback C_SocketClientEventCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"event" FunPtr C_SocketClientEventCallback
wrapped'' SignalConnectMode
SignalConnectBefore forall a. Maybe a
Nothing
afterSocketClientEvent :: (IsSocketClient a, MonadIO m) => a -> ((?self :: a) => SocketClientEventCallback) -> m SignalHandlerId
afterSocketClientEvent :: forall a (m :: * -> *).
(IsSocketClient a, MonadIO m) =>
a -> ((?self::a) => SocketClientEventCallback) -> m SignalHandlerId
afterSocketClientEvent a
obj (?self::a) => SocketClientEventCallback
cb = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> SocketClientEventCallback
wrapped a
self = let ?self = a
self in (?self::a) => SocketClientEventCallback
cb
let wrapped' :: C_SocketClientEventCallback
wrapped' = forall a.
GObject a =>
(a -> SocketClientEventCallback) -> C_SocketClientEventCallback
wrap_SocketClientEventCallback a -> SocketClientEventCallback
wrapped
FunPtr C_SocketClientEventCallback
wrapped'' <- C_SocketClientEventCallback
-> IO (FunPtr C_SocketClientEventCallback)
mk_SocketClientEventCallback C_SocketClientEventCallback
wrapped'
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"event" FunPtr C_SocketClientEventCallback
wrapped'' SignalConnectMode
SignalConnectAfter forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data SocketClientEventSignalInfo
instance SignalInfo SocketClientEventSignalInfo where
type HaskellCallbackType SocketClientEventSignalInfo = SocketClientEventCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_SocketClientEventCallback cb
cb'' <- mk_SocketClientEventCallback cb'
connectSignalFunPtr obj "event" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient::event"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:signal:event"})
#endif
getSocketClientEnableProxy :: (MonadIO m, IsSocketClient o) => o -> m Bool
getSocketClientEnableProxy :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m Bool
getSocketClientEnableProxy o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"enable-proxy"
setSocketClientEnableProxy :: (MonadIO m, IsSocketClient o) => o -> Bool -> m ()
setSocketClientEnableProxy :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> Bool -> m ()
setSocketClientEnableProxy o
obj Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"enable-proxy" Bool
val
constructSocketClientEnableProxy :: (IsSocketClient o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSocketClientEnableProxy :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSocketClientEnableProxy Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"enable-proxy" Bool
val
#if defined(ENABLE_OVERLOADING)
data SocketClientEnableProxyPropertyInfo
instance AttrInfo SocketClientEnableProxyPropertyInfo where
type AttrAllowedOps SocketClientEnableProxyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientEnableProxyPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientEnableProxyPropertyInfo = (~) Bool
type AttrTransferTypeConstraint SocketClientEnableProxyPropertyInfo = (~) Bool
type AttrTransferType SocketClientEnableProxyPropertyInfo = Bool
type AttrGetType SocketClientEnableProxyPropertyInfo = Bool
type AttrLabel SocketClientEnableProxyPropertyInfo = "enable-proxy"
type AttrOrigin SocketClientEnableProxyPropertyInfo = SocketClient
attrGet = getSocketClientEnableProxy
attrSet = setSocketClientEnableProxy
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientEnableProxy
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.enableProxy"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:enableProxy"
})
#endif
getSocketClientFamily :: (MonadIO m, IsSocketClient o) => o -> m Gio.Enums.SocketFamily
getSocketClientFamily :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m SocketFamily
getSocketClientFamily o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"family"
setSocketClientFamily :: (MonadIO m, IsSocketClient o) => o -> Gio.Enums.SocketFamily -> m ()
setSocketClientFamily :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> SocketFamily -> m ()
setSocketClientFamily o
obj SocketFamily
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"family" SocketFamily
val
constructSocketClientFamily :: (IsSocketClient o, MIO.MonadIO m) => Gio.Enums.SocketFamily -> m (GValueConstruct o)
constructSocketClientFamily :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
SocketFamily -> m (GValueConstruct o)
constructSocketClientFamily SocketFamily
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"family" SocketFamily
val
#if defined(ENABLE_OVERLOADING)
data SocketClientFamilyPropertyInfo
instance AttrInfo SocketClientFamilyPropertyInfo where
type AttrAllowedOps SocketClientFamilyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientFamilyPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientFamilyPropertyInfo = (~) Gio.Enums.SocketFamily
type AttrTransferTypeConstraint SocketClientFamilyPropertyInfo = (~) Gio.Enums.SocketFamily
type AttrTransferType SocketClientFamilyPropertyInfo = Gio.Enums.SocketFamily
type AttrGetType SocketClientFamilyPropertyInfo = Gio.Enums.SocketFamily
type AttrLabel SocketClientFamilyPropertyInfo = "family"
type AttrOrigin SocketClientFamilyPropertyInfo = SocketClient
attrGet = getSocketClientFamily
attrSet = setSocketClientFamily
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientFamily
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.family"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:family"
})
#endif
getSocketClientLocalAddress :: (MonadIO m, IsSocketClient o) => o -> m (Maybe Gio.SocketAddress.SocketAddress)
getSocketClientLocalAddress :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m (Maybe SocketAddress)
getSocketClientLocalAddress o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"local-address" ManagedPtr SocketAddress -> SocketAddress
Gio.SocketAddress.SocketAddress
setSocketClientLocalAddress :: (MonadIO m, IsSocketClient o, Gio.SocketAddress.IsSocketAddress a) => o -> a -> m ()
setSocketClientLocalAddress :: forall (m :: * -> *) o a.
(MonadIO m, IsSocketClient o, IsSocketAddress a) =>
o -> a -> m ()
setSocketClientLocalAddress o
obj a
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"local-address" (forall a. a -> Maybe a
Just a
val)
constructSocketClientLocalAddress :: (IsSocketClient o, MIO.MonadIO m, Gio.SocketAddress.IsSocketAddress a) => a -> m (GValueConstruct o)
constructSocketClientLocalAddress :: forall o (m :: * -> *) a.
(IsSocketClient o, MonadIO m, IsSocketAddress a) =>
a -> m (GValueConstruct o)
constructSocketClientLocalAddress a
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"local-address" (forall a. a -> Maybe a
P.Just a
val)
clearSocketClientLocalAddress :: (MonadIO m, IsSocketClient o) => o -> m ()
clearSocketClientLocalAddress :: forall (m :: * -> *) o. (MonadIO m, IsSocketClient o) => o -> m ()
clearSocketClientLocalAddress o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"local-address" (forall a. Maybe a
Nothing :: Maybe Gio.SocketAddress.SocketAddress)
#if defined(ENABLE_OVERLOADING)
data SocketClientLocalAddressPropertyInfo
instance AttrInfo SocketClientLocalAddressPropertyInfo where
type AttrAllowedOps SocketClientLocalAddressPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint SocketClientLocalAddressPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientLocalAddressPropertyInfo = Gio.SocketAddress.IsSocketAddress
type AttrTransferTypeConstraint SocketClientLocalAddressPropertyInfo = Gio.SocketAddress.IsSocketAddress
type AttrTransferType SocketClientLocalAddressPropertyInfo = Gio.SocketAddress.SocketAddress
type AttrGetType SocketClientLocalAddressPropertyInfo = (Maybe Gio.SocketAddress.SocketAddress)
type AttrLabel SocketClientLocalAddressPropertyInfo = "local-address"
type AttrOrigin SocketClientLocalAddressPropertyInfo = SocketClient
attrGet = getSocketClientLocalAddress
attrSet = setSocketClientLocalAddress
attrTransfer _ v = do
unsafeCastTo Gio.SocketAddress.SocketAddress v
attrConstruct = constructSocketClientLocalAddress
attrClear = clearSocketClientLocalAddress
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.localAddress"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:localAddress"
})
#endif
getSocketClientProtocol :: (MonadIO m, IsSocketClient o) => o -> m Gio.Enums.SocketProtocol
getSocketClientProtocol :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m SocketProtocol
getSocketClientProtocol o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"protocol"
setSocketClientProtocol :: (MonadIO m, IsSocketClient o) => o -> Gio.Enums.SocketProtocol -> m ()
setSocketClientProtocol :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> SocketProtocol -> m ()
setSocketClientProtocol o
obj SocketProtocol
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"protocol" SocketProtocol
val
constructSocketClientProtocol :: (IsSocketClient o, MIO.MonadIO m) => Gio.Enums.SocketProtocol -> m (GValueConstruct o)
constructSocketClientProtocol :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
SocketProtocol -> m (GValueConstruct o)
constructSocketClientProtocol SocketProtocol
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"protocol" SocketProtocol
val
#if defined(ENABLE_OVERLOADING)
data SocketClientProtocolPropertyInfo
instance AttrInfo SocketClientProtocolPropertyInfo where
type AttrAllowedOps SocketClientProtocolPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientProtocolPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientProtocolPropertyInfo = (~) Gio.Enums.SocketProtocol
type AttrTransferTypeConstraint SocketClientProtocolPropertyInfo = (~) Gio.Enums.SocketProtocol
type AttrTransferType SocketClientProtocolPropertyInfo = Gio.Enums.SocketProtocol
type AttrGetType SocketClientProtocolPropertyInfo = Gio.Enums.SocketProtocol
type AttrLabel SocketClientProtocolPropertyInfo = "protocol"
type AttrOrigin SocketClientProtocolPropertyInfo = SocketClient
attrGet = getSocketClientProtocol
attrSet = setSocketClientProtocol
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientProtocol
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.protocol"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:protocol"
})
#endif
getSocketClientProxyResolver :: (MonadIO m, IsSocketClient o) => o -> m Gio.ProxyResolver.ProxyResolver
getSocketClientProxyResolver :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m ProxyResolver
getSocketClientProxyResolver o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getSocketClientProxyResolver" forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GObject b) =>
a -> String -> (ManagedPtr b -> b) -> IO (Maybe b)
B.Properties.getObjectPropertyObject o
obj String
"proxy-resolver" ManagedPtr ProxyResolver -> ProxyResolver
Gio.ProxyResolver.ProxyResolver
setSocketClientProxyResolver :: (MonadIO m, IsSocketClient o, Gio.ProxyResolver.IsProxyResolver a) => o -> a -> m ()
setSocketClientProxyResolver :: forall (m :: * -> *) o a.
(MonadIO m, IsSocketClient o, IsProxyResolver a) =>
o -> a -> m ()
setSocketClientProxyResolver o
obj a
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"proxy-resolver" (forall a. a -> Maybe a
Just a
val)
constructSocketClientProxyResolver :: (IsSocketClient o, MIO.MonadIO m, Gio.ProxyResolver.IsProxyResolver a) => a -> m (GValueConstruct o)
constructSocketClientProxyResolver :: forall o (m :: * -> *) a.
(IsSocketClient o, MonadIO m, IsProxyResolver a) =>
a -> m (GValueConstruct o)
constructSocketClientProxyResolver a
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
GObject a =>
String -> Maybe a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyObject String
"proxy-resolver" (forall a. a -> Maybe a
P.Just a
val)
clearSocketClientProxyResolver :: (MonadIO m, IsSocketClient o) => o -> m ()
clearSocketClientProxyResolver :: forall (m :: * -> *) o. (MonadIO m, IsSocketClient o) => o -> m ()
clearSocketClientProxyResolver o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, GObject b) =>
a -> String -> Maybe b -> IO ()
B.Properties.setObjectPropertyObject o
obj String
"proxy-resolver" (forall a. Maybe a
Nothing :: Maybe Gio.ProxyResolver.ProxyResolver)
#if defined(ENABLE_OVERLOADING)
data SocketClientProxyResolverPropertyInfo
instance AttrInfo SocketClientProxyResolverPropertyInfo where
type AttrAllowedOps SocketClientProxyResolverPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
type AttrBaseTypeConstraint SocketClientProxyResolverPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientProxyResolverPropertyInfo = Gio.ProxyResolver.IsProxyResolver
type AttrTransferTypeConstraint SocketClientProxyResolverPropertyInfo = Gio.ProxyResolver.IsProxyResolver
type AttrTransferType SocketClientProxyResolverPropertyInfo = Gio.ProxyResolver.ProxyResolver
type AttrGetType SocketClientProxyResolverPropertyInfo = Gio.ProxyResolver.ProxyResolver
type AttrLabel SocketClientProxyResolverPropertyInfo = "proxy-resolver"
type AttrOrigin SocketClientProxyResolverPropertyInfo = SocketClient
attrGet = getSocketClientProxyResolver
attrSet = setSocketClientProxyResolver
attrTransfer _ v = do
unsafeCastTo Gio.ProxyResolver.ProxyResolver v
attrConstruct = constructSocketClientProxyResolver
attrClear = clearSocketClientProxyResolver
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.proxyResolver"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:proxyResolver"
})
#endif
getSocketClientTimeout :: (MonadIO m, IsSocketClient o) => o -> m Word32
getSocketClientTimeout :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m Word32
getSocketClientTimeout o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO Word32
B.Properties.getObjectPropertyUInt32 o
obj String
"timeout"
setSocketClientTimeout :: (MonadIO m, IsSocketClient o) => o -> Word32 -> m ()
setSocketClientTimeout :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> Word32 -> m ()
setSocketClientTimeout o
obj Word32
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a. GObject a => a -> String -> Word32 -> IO ()
B.Properties.setObjectPropertyUInt32 o
obj String
"timeout" Word32
val
constructSocketClientTimeout :: (IsSocketClient o, MIO.MonadIO m) => Word32 -> m (GValueConstruct o)
constructSocketClientTimeout :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
Word32 -> m (GValueConstruct o)
constructSocketClientTimeout Word32
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Word32 -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyUInt32 String
"timeout" Word32
val
#if defined(ENABLE_OVERLOADING)
data SocketClientTimeoutPropertyInfo
instance AttrInfo SocketClientTimeoutPropertyInfo where
type AttrAllowedOps SocketClientTimeoutPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientTimeoutPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientTimeoutPropertyInfo = (~) Word32
type AttrTransferTypeConstraint SocketClientTimeoutPropertyInfo = (~) Word32
type AttrTransferType SocketClientTimeoutPropertyInfo = Word32
type AttrGetType SocketClientTimeoutPropertyInfo = Word32
type AttrLabel SocketClientTimeoutPropertyInfo = "timeout"
type AttrOrigin SocketClientTimeoutPropertyInfo = SocketClient
attrGet = getSocketClientTimeout
attrSet = setSocketClientTimeout
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientTimeout
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.timeout"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:timeout"
})
#endif
getSocketClientTls :: (MonadIO m, IsSocketClient o) => o -> m Bool
getSocketClientTls :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m Bool
getSocketClientTls o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a. GObject a => a -> String -> IO Bool
B.Properties.getObjectPropertyBool o
obj String
"tls"
setSocketClientTls :: (MonadIO m, IsSocketClient o) => o -> Bool -> m ()
setSocketClientTls :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> Bool -> m ()
setSocketClientTls o
obj Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a. GObject a => a -> String -> Bool -> IO ()
B.Properties.setObjectPropertyBool o
obj String
"tls" Bool
val
constructSocketClientTls :: (IsSocketClient o, MIO.MonadIO m) => Bool -> m (GValueConstruct o)
constructSocketClientTls :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
Bool -> m (GValueConstruct o)
constructSocketClientTls Bool
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall o. String -> Bool -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyBool String
"tls" Bool
val
#if defined(ENABLE_OVERLOADING)
data SocketClientTlsPropertyInfo
instance AttrInfo SocketClientTlsPropertyInfo where
type AttrAllowedOps SocketClientTlsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientTlsPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientTlsPropertyInfo = (~) Bool
type AttrTransferTypeConstraint SocketClientTlsPropertyInfo = (~) Bool
type AttrTransferType SocketClientTlsPropertyInfo = Bool
type AttrGetType SocketClientTlsPropertyInfo = Bool
type AttrLabel SocketClientTlsPropertyInfo = "tls"
type AttrOrigin SocketClientTlsPropertyInfo = SocketClient
attrGet = getSocketClientTls
attrSet = setSocketClientTls
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientTls
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.tls"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:tls"
})
#endif
getSocketClientTlsValidationFlags :: (MonadIO m, IsSocketClient o) => o -> m [Gio.Flags.TlsCertificateFlags]
getSocketClientTlsValidationFlags :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m [TlsCertificateFlags]
getSocketClientTlsValidationFlags o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b.
(GObject a, IsGFlag b, BoxedFlags b) =>
a -> String -> IO [b]
B.Properties.getObjectPropertyFlags o
obj String
"tls-validation-flags"
setSocketClientTlsValidationFlags :: (MonadIO m, IsSocketClient o) => o -> [Gio.Flags.TlsCertificateFlags] -> m ()
setSocketClientTlsValidationFlags :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> [TlsCertificateFlags] -> m ()
setSocketClientTlsValidationFlags o
obj [TlsCertificateFlags]
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(IsGFlag b, BoxedFlags b, GObject a) =>
a -> String -> [b] -> IO ()
B.Properties.setObjectPropertyFlags o
obj String
"tls-validation-flags" [TlsCertificateFlags]
val
constructSocketClientTlsValidationFlags :: (IsSocketClient o, MIO.MonadIO m) => [Gio.Flags.TlsCertificateFlags] -> m (GValueConstruct o)
constructSocketClientTlsValidationFlags :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
[TlsCertificateFlags] -> m (GValueConstruct o)
constructSocketClientTlsValidationFlags [TlsCertificateFlags]
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
(IsGFlag a, BoxedFlags a) =>
String -> [a] -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyFlags String
"tls-validation-flags" [TlsCertificateFlags]
val
#if defined(ENABLE_OVERLOADING)
data SocketClientTlsValidationFlagsPropertyInfo
instance AttrInfo SocketClientTlsValidationFlagsPropertyInfo where
type AttrAllowedOps SocketClientTlsValidationFlagsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientTlsValidationFlagsPropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientTlsValidationFlagsPropertyInfo = (~) [Gio.Flags.TlsCertificateFlags]
type AttrTransferTypeConstraint SocketClientTlsValidationFlagsPropertyInfo = (~) [Gio.Flags.TlsCertificateFlags]
type AttrTransferType SocketClientTlsValidationFlagsPropertyInfo = [Gio.Flags.TlsCertificateFlags]
type AttrGetType SocketClientTlsValidationFlagsPropertyInfo = [Gio.Flags.TlsCertificateFlags]
type AttrLabel SocketClientTlsValidationFlagsPropertyInfo = "tls-validation-flags"
type AttrOrigin SocketClientTlsValidationFlagsPropertyInfo = SocketClient
attrGet = getSocketClientTlsValidationFlags
attrSet = setSocketClientTlsValidationFlags
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientTlsValidationFlags
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.tlsValidationFlags"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:tlsValidationFlags"
})
#endif
getSocketClientType :: (MonadIO m, IsSocketClient o) => o -> m Gio.Enums.SocketType
getSocketClientType :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> m SocketType
getSocketClientType o
obj = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a b. (GObject a, Enum b, BoxedEnum b) => a -> String -> IO b
B.Properties.getObjectPropertyEnum o
obj String
"type"
setSocketClientType :: (MonadIO m, IsSocketClient o) => o -> Gio.Enums.SocketType -> m ()
setSocketClientType :: forall (m :: * -> *) o.
(MonadIO m, IsSocketClient o) =>
o -> SocketType -> m ()
setSocketClientType o
obj SocketType
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall a b.
(GObject a, Enum b, BoxedEnum b) =>
a -> String -> b -> IO ()
B.Properties.setObjectPropertyEnum o
obj String
"type" SocketType
val
constructSocketClientType :: (IsSocketClient o, MIO.MonadIO m) => Gio.Enums.SocketType -> m (GValueConstruct o)
constructSocketClientType :: forall o (m :: * -> *).
(IsSocketClient o, MonadIO m) =>
SocketType -> m (GValueConstruct o)
constructSocketClientType SocketType
val = forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ do
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO forall a b. (a -> b) -> a -> b
$ forall a o.
(Enum a, BoxedEnum a) =>
String -> a -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyEnum String
"type" SocketType
val
#if defined(ENABLE_OVERLOADING)
data SocketClientTypePropertyInfo
instance AttrInfo SocketClientTypePropertyInfo where
type AttrAllowedOps SocketClientTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint SocketClientTypePropertyInfo = IsSocketClient
type AttrSetTypeConstraint SocketClientTypePropertyInfo = (~) Gio.Enums.SocketType
type AttrTransferTypeConstraint SocketClientTypePropertyInfo = (~) Gio.Enums.SocketType
type AttrTransferType SocketClientTypePropertyInfo = Gio.Enums.SocketType
type AttrGetType SocketClientTypePropertyInfo = Gio.Enums.SocketType
type AttrLabel SocketClientTypePropertyInfo = "type"
type AttrOrigin SocketClientTypePropertyInfo = SocketClient
attrGet = getSocketClientType
attrSet = setSocketClientType
attrTransfer _ v = do
return v
attrConstruct = constructSocketClientType
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.type"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#g:attr:type"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList SocketClient
type instance O.AttributeList SocketClient = SocketClientAttributeList
type SocketClientAttributeList = ('[ '("enableProxy", SocketClientEnableProxyPropertyInfo), '("family", SocketClientFamilyPropertyInfo), '("localAddress", SocketClientLocalAddressPropertyInfo), '("protocol", SocketClientProtocolPropertyInfo), '("proxyResolver", SocketClientProxyResolverPropertyInfo), '("timeout", SocketClientTimeoutPropertyInfo), '("tls", SocketClientTlsPropertyInfo), '("tlsValidationFlags", SocketClientTlsValidationFlagsPropertyInfo), '("type", SocketClientTypePropertyInfo)] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
socketClientEnableProxy :: AttrLabelProxy "enableProxy"
socketClientEnableProxy = AttrLabelProxy
socketClientFamily :: AttrLabelProxy "family"
socketClientFamily = AttrLabelProxy
socketClientLocalAddress :: AttrLabelProxy "localAddress"
socketClientLocalAddress = AttrLabelProxy
socketClientProtocol :: AttrLabelProxy "protocol"
socketClientProtocol = AttrLabelProxy
socketClientProxyResolver :: AttrLabelProxy "proxyResolver"
socketClientProxyResolver = AttrLabelProxy
socketClientTimeout :: AttrLabelProxy "timeout"
socketClientTimeout = AttrLabelProxy
socketClientTls :: AttrLabelProxy "tls"
socketClientTls = AttrLabelProxy
socketClientTlsValidationFlags :: AttrLabelProxy "tlsValidationFlags"
socketClientTlsValidationFlags = AttrLabelProxy
socketClientType :: AttrLabelProxy "type"
socketClientType = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList SocketClient = SocketClientSignalList
type SocketClientSignalList = ('[ '("event", SocketClientEventSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "g_socket_client_new" g_socket_client_new ::
IO (Ptr SocketClient)
socketClientNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m SocketClient
socketClientNew :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m SocketClient
socketClientNew = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
result <- IO (Ptr SocketClient)
g_socket_client_new
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientNew" Ptr SocketClient
result
SocketClient
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketClient -> SocketClient
SocketClient) Ptr SocketClient
result
forall (m :: * -> *) a. Monad m => a -> m a
return SocketClient
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "g_socket_client_add_application_proxy" g_socket_client_add_application_proxy ::
Ptr SocketClient ->
CString ->
IO ()
socketClientAddApplicationProxy ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> T.Text
-> m ()
socketClientAddApplicationProxy :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> Text -> m ()
socketClientAddApplicationProxy a
client Text
protocol = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
protocol' <- Text -> IO CString
textToCString Text
protocol
Ptr SocketClient -> CString -> IO ()
g_socket_client_add_application_proxy Ptr SocketClient
client' CString
protocol'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. Ptr a -> IO ()
freeMem CString
protocol'
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientAddApplicationProxyMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientAddApplicationProxyMethodInfo a signature where
overloadedMethod = socketClientAddApplicationProxy
instance O.OverloadedMethodInfo SocketClientAddApplicationProxyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientAddApplicationProxy",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientAddApplicationProxy"
})
#endif
foreign import ccall "g_socket_client_connect" g_socket_client_connect ::
Ptr SocketClient ->
Ptr Gio.SocketConnectable.SocketConnectable ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnect ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.SocketConnectable.IsSocketConnectable b, Gio.Cancellable.IsCancellable c) =>
a
-> b
-> Maybe (c)
-> m Gio.SocketConnection.SocketConnection
socketClientConnect :: forall (m :: * -> *) a b c.
(HasCallStack, MonadIO m, IsSocketClient a, IsSocketConnectable b,
IsCancellable c) =>
a -> b -> Maybe c -> m SocketConnection
socketClientConnect a
client b
connectable Maybe c
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr SocketConnectable
connectable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
connectable
Ptr Cancellable
maybeCancellable <- case Maybe c
cancellable of
Maybe c
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just c
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr c
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> Ptr SocketConnectable
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SocketConnection)
g_socket_client_connect Ptr SocketClient
client' Ptr SocketConnectable
connectable' Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnect" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
connectable
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe c
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectMethodInfo
instance (signature ~ (b -> Maybe (c) -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.SocketConnectable.IsSocketConnectable b, Gio.Cancellable.IsCancellable c) => O.OverloadedMethod SocketClientConnectMethodInfo a signature where
overloadedMethod = socketClientConnect
instance O.OverloadedMethodInfo SocketClientConnectMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnect",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnect"
})
#endif
foreign import ccall "g_socket_client_connect_async" g_socket_client_connect_async ::
Ptr SocketClient ->
Ptr Gio.SocketConnectable.SocketConnectable ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
socketClientConnectAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.SocketConnectable.IsSocketConnectable b, Gio.Cancellable.IsCancellable c) =>
a
-> b
-> Maybe (c)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
socketClientConnectAsync :: forall (m :: * -> *) a b c.
(HasCallStack, MonadIO m, IsSocketClient a, IsSocketConnectable b,
IsCancellable c) =>
a -> b -> Maybe c -> Maybe AsyncReadyCallback -> m ()
socketClientConnectAsync a
client b
connectable Maybe c
cancellable Maybe AsyncReadyCallback
callback = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr SocketConnectable
connectable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
connectable
Ptr Cancellable
maybeCancellable <- case Maybe c
cancellable of
Maybe c
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just c
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr c
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
FunPtr C_AsyncReadyCallback
maybeCallback <- case Maybe AsyncReadyCallback
callback of
Maybe AsyncReadyCallback
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return (forall a b. Ptr a -> FunPtr b
castPtrToFunPtr forall a. Ptr a
nullPtr)
Just AsyncReadyCallback
jCallback -> do
Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback <- forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
FunPtr C_AsyncReadyCallback
jCallback' <- C_AsyncReadyCallback -> IO (FunPtr C_AsyncReadyCallback)
Gio.Callbacks.mk_AsyncReadyCallback (Maybe (Ptr (FunPtr C_AsyncReadyCallback))
-> AsyncReadyCallback -> C_AsyncReadyCallback
Gio.Callbacks.wrap_AsyncReadyCallback (forall a. a -> Maybe a
Just Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback) AsyncReadyCallback
jCallback)
forall a. Storable a => Ptr a -> a -> IO ()
poke Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback FunPtr C_AsyncReadyCallback
jCallback'
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_AsyncReadyCallback
jCallback'
let userData :: Ptr a
userData = forall a. Ptr a
nullPtr
Ptr SocketClient
-> Ptr SocketConnectable
-> Ptr Cancellable
-> FunPtr C_AsyncReadyCallback
-> Ptr ()
-> IO ()
g_socket_client_connect_async Ptr SocketClient
client' Ptr SocketConnectable
connectable' Ptr Cancellable
maybeCancellable FunPtr C_AsyncReadyCallback
maybeCallback forall a. Ptr a
userData
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
connectable
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe c
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectAsyncMethodInfo
instance (signature ~ (b -> Maybe (c) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsSocketClient a, Gio.SocketConnectable.IsSocketConnectable b, Gio.Cancellable.IsCancellable c) => O.OverloadedMethod SocketClientConnectAsyncMethodInfo a signature where
overloadedMethod = socketClientConnectAsync
instance O.OverloadedMethodInfo SocketClientConnectAsyncMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectAsync",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectAsync"
})
#endif
foreign import ccall "g_socket_client_connect_finish" g_socket_client_connect_finish ::
Ptr SocketClient ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m Gio.SocketConnection.SocketConnection
socketClientConnectFinish :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsAsyncResult b) =>
a -> b -> m SocketConnection
socketClientConnectFinish a
client b
result_ = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr AsyncResult
result_' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
result_
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> Ptr AsyncResult -> Ptr (Ptr GError) -> IO (Ptr SocketConnection)
g_socket_client_connect_finish Ptr SocketClient
client' Ptr AsyncResult
result_'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectFinish" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
result_
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectFinishMethodInfo
instance (signature ~ (b -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) => O.OverloadedMethod SocketClientConnectFinishMethodInfo a signature where
overloadedMethod = socketClientConnectFinish
instance O.OverloadedMethodInfo SocketClientConnectFinishMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectFinish",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectFinish"
})
#endif
foreign import ccall "g_socket_client_connect_to_host" g_socket_client_connect_to_host ::
Ptr SocketClient ->
CString ->
Word16 ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToHost ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> Word16
-> Maybe (b)
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToHost :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Word16 -> Maybe b -> m SocketConnection
socketClientConnectToHost a
client Text
hostAndPort Word16
defaultPort Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
hostAndPort' <- Text -> IO CString
textToCString Text
hostAndPort
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> CString
-> Word16
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SocketConnection)
g_socket_client_connect_to_host Ptr SocketClient
client' CString
hostAndPort' Word16
defaultPort Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToHost" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
hostAndPort'
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall a. Ptr a -> IO ()
freeMem CString
hostAndPort'
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToHostMethodInfo
instance (signature ~ (T.Text -> Word16 -> Maybe (b) -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToHostMethodInfo a signature where
overloadedMethod = socketClientConnectToHost
instance O.OverloadedMethodInfo SocketClientConnectToHostMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToHost",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToHost"
})
#endif
foreign import ccall "g_socket_client_connect_to_host_async" g_socket_client_connect_to_host_async ::
Ptr SocketClient ->
CString ->
Word16 ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
socketClientConnectToHostAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> Word16
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
socketClientConnectToHostAsync :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Word16 -> Maybe b -> Maybe AsyncReadyCallback -> m ()
socketClientConnectToHostAsync a
client Text
hostAndPort Word16
defaultPort Maybe b
cancellable Maybe AsyncReadyCallback
callback = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
hostAndPort' <- Text -> IO CString
textToCString Text
hostAndPort
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
FunPtr C_AsyncReadyCallback
maybeCallback <- case Maybe AsyncReadyCallback
callback of
Maybe AsyncReadyCallback
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return (forall a b. Ptr a -> FunPtr b
castPtrToFunPtr forall a. Ptr a
nullPtr)
Just AsyncReadyCallback
jCallback -> do
Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback <- forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
FunPtr C_AsyncReadyCallback
jCallback' <- C_AsyncReadyCallback -> IO (FunPtr C_AsyncReadyCallback)
Gio.Callbacks.mk_AsyncReadyCallback (Maybe (Ptr (FunPtr C_AsyncReadyCallback))
-> AsyncReadyCallback -> C_AsyncReadyCallback
Gio.Callbacks.wrap_AsyncReadyCallback (forall a. a -> Maybe a
Just Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback) AsyncReadyCallback
jCallback)
forall a. Storable a => Ptr a -> a -> IO ()
poke Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback FunPtr C_AsyncReadyCallback
jCallback'
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_AsyncReadyCallback
jCallback'
let userData :: Ptr a
userData = forall a. Ptr a
nullPtr
Ptr SocketClient
-> CString
-> Word16
-> Ptr Cancellable
-> FunPtr C_AsyncReadyCallback
-> Ptr ()
-> IO ()
g_socket_client_connect_to_host_async Ptr SocketClient
client' CString
hostAndPort' Word16
defaultPort Ptr Cancellable
maybeCancellable FunPtr C_AsyncReadyCallback
maybeCallback forall a. Ptr a
userData
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
hostAndPort'
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToHostAsyncMethodInfo
instance (signature ~ (T.Text -> Word16 -> Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToHostAsyncMethodInfo a signature where
overloadedMethod = socketClientConnectToHostAsync
instance O.OverloadedMethodInfo SocketClientConnectToHostAsyncMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToHostAsync",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToHostAsync"
})
#endif
foreign import ccall "g_socket_client_connect_to_host_finish" g_socket_client_connect_to_host_finish ::
Ptr SocketClient ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToHostFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToHostFinish :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsAsyncResult b) =>
a -> b -> m SocketConnection
socketClientConnectToHostFinish a
client b
result_ = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr AsyncResult
result_' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
result_
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> Ptr AsyncResult -> Ptr (Ptr GError) -> IO (Ptr SocketConnection)
g_socket_client_connect_to_host_finish Ptr SocketClient
client' Ptr AsyncResult
result_'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToHostFinish" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
result_
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToHostFinishMethodInfo
instance (signature ~ (b -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) => O.OverloadedMethod SocketClientConnectToHostFinishMethodInfo a signature where
overloadedMethod = socketClientConnectToHostFinish
instance O.OverloadedMethodInfo SocketClientConnectToHostFinishMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToHostFinish",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToHostFinish"
})
#endif
foreign import ccall "g_socket_client_connect_to_service" g_socket_client_connect_to_service ::
Ptr SocketClient ->
CString ->
CString ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToService ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> T.Text
-> Maybe (b)
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToService :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Text -> Maybe b -> m SocketConnection
socketClientConnectToService a
client Text
domain Text
service Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
domain' <- Text -> IO CString
textToCString Text
domain
CString
service' <- Text -> IO CString
textToCString Text
service
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> CString
-> CString
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SocketConnection)
g_socket_client_connect_to_service Ptr SocketClient
client' CString
domain' CString
service' Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToService" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
domain'
forall a. Ptr a -> IO ()
freeMem CString
service'
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall a. Ptr a -> IO ()
freeMem CString
domain'
forall a. Ptr a -> IO ()
freeMem CString
service'
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToServiceMethodInfo
instance (signature ~ (T.Text -> T.Text -> Maybe (b) -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToServiceMethodInfo a signature where
overloadedMethod = socketClientConnectToService
instance O.OverloadedMethodInfo SocketClientConnectToServiceMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToService",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToService"
})
#endif
foreign import ccall "g_socket_client_connect_to_service_async" g_socket_client_connect_to_service_async ::
Ptr SocketClient ->
CString ->
CString ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
socketClientConnectToServiceAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> T.Text
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
socketClientConnectToServiceAsync :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Text -> Maybe b -> Maybe AsyncReadyCallback -> m ()
socketClientConnectToServiceAsync a
client Text
domain Text
service Maybe b
cancellable Maybe AsyncReadyCallback
callback = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
domain' <- Text -> IO CString
textToCString Text
domain
CString
service' <- Text -> IO CString
textToCString Text
service
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
FunPtr C_AsyncReadyCallback
maybeCallback <- case Maybe AsyncReadyCallback
callback of
Maybe AsyncReadyCallback
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return (forall a b. Ptr a -> FunPtr b
castPtrToFunPtr forall a. Ptr a
nullPtr)
Just AsyncReadyCallback
jCallback -> do
Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback <- forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
FunPtr C_AsyncReadyCallback
jCallback' <- C_AsyncReadyCallback -> IO (FunPtr C_AsyncReadyCallback)
Gio.Callbacks.mk_AsyncReadyCallback (Maybe (Ptr (FunPtr C_AsyncReadyCallback))
-> AsyncReadyCallback -> C_AsyncReadyCallback
Gio.Callbacks.wrap_AsyncReadyCallback (forall a. a -> Maybe a
Just Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback) AsyncReadyCallback
jCallback)
forall a. Storable a => Ptr a -> a -> IO ()
poke Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback FunPtr C_AsyncReadyCallback
jCallback'
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_AsyncReadyCallback
jCallback'
let userData :: Ptr a
userData = forall a. Ptr a
nullPtr
Ptr SocketClient
-> CString
-> CString
-> Ptr Cancellable
-> FunPtr C_AsyncReadyCallback
-> Ptr ()
-> IO ()
g_socket_client_connect_to_service_async Ptr SocketClient
client' CString
domain' CString
service' Ptr Cancellable
maybeCancellable FunPtr C_AsyncReadyCallback
maybeCallback forall a. Ptr a
userData
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
domain'
forall a. Ptr a -> IO ()
freeMem CString
service'
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToServiceAsyncMethodInfo
instance (signature ~ (T.Text -> T.Text -> Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToServiceAsyncMethodInfo a signature where
overloadedMethod = socketClientConnectToServiceAsync
instance O.OverloadedMethodInfo SocketClientConnectToServiceAsyncMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToServiceAsync",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToServiceAsync"
})
#endif
foreign import ccall "g_socket_client_connect_to_service_finish" g_socket_client_connect_to_service_finish ::
Ptr SocketClient ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToServiceFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToServiceFinish :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsAsyncResult b) =>
a -> b -> m SocketConnection
socketClientConnectToServiceFinish a
client b
result_ = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr AsyncResult
result_' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
result_
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> Ptr AsyncResult -> Ptr (Ptr GError) -> IO (Ptr SocketConnection)
g_socket_client_connect_to_service_finish Ptr SocketClient
client' Ptr AsyncResult
result_'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToServiceFinish" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
result_
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToServiceFinishMethodInfo
instance (signature ~ (b -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) => O.OverloadedMethod SocketClientConnectToServiceFinishMethodInfo a signature where
overloadedMethod = socketClientConnectToServiceFinish
instance O.OverloadedMethodInfo SocketClientConnectToServiceFinishMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToServiceFinish",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToServiceFinish"
})
#endif
foreign import ccall "g_socket_client_connect_to_uri" g_socket_client_connect_to_uri ::
Ptr SocketClient ->
CString ->
Word16 ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToUri ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> Word16
-> Maybe (b)
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToUri :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Word16 -> Maybe b -> m SocketConnection
socketClientConnectToUri a
client Text
uri Word16
defaultPort Maybe b
cancellable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
uri' <- Text -> IO CString
textToCString Text
uri
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> CString
-> Word16
-> Ptr Cancellable
-> Ptr (Ptr GError)
-> IO (Ptr SocketConnection)
g_socket_client_connect_to_uri Ptr SocketClient
client' CString
uri' Word16
defaultPort Ptr Cancellable
maybeCancellable
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToUri" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
uri'
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall a. Ptr a -> IO ()
freeMem CString
uri'
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToUriMethodInfo
instance (signature ~ (T.Text -> Word16 -> Maybe (b) -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToUriMethodInfo a signature where
overloadedMethod = socketClientConnectToUri
instance O.OverloadedMethodInfo SocketClientConnectToUriMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToUri",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToUri"
})
#endif
foreign import ccall "g_socket_client_connect_to_uri_async" g_socket_client_connect_to_uri_async ::
Ptr SocketClient ->
CString ->
Word16 ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
socketClientConnectToUriAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) =>
a
-> T.Text
-> Word16
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
socketClientConnectToUriAsync :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsCancellable b) =>
a -> Text -> Word16 -> Maybe b -> Maybe AsyncReadyCallback -> m ()
socketClientConnectToUriAsync a
client Text
uri Word16
defaultPort Maybe b
cancellable Maybe AsyncReadyCallback
callback = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CString
uri' <- Text -> IO CString
textToCString Text
uri
Ptr Cancellable
maybeCancellable <- case Maybe b
cancellable of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jCancellable -> do
Ptr Cancellable
jCancellable' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jCancellable
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr Cancellable
jCancellable'
FunPtr C_AsyncReadyCallback
maybeCallback <- case Maybe AsyncReadyCallback
callback of
Maybe AsyncReadyCallback
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return (forall a b. Ptr a -> FunPtr b
castPtrToFunPtr forall a. Ptr a
nullPtr)
Just AsyncReadyCallback
jCallback -> do
Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback <- forall a. Storable a => IO (Ptr a)
callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
FunPtr C_AsyncReadyCallback
jCallback' <- C_AsyncReadyCallback -> IO (FunPtr C_AsyncReadyCallback)
Gio.Callbacks.mk_AsyncReadyCallback (Maybe (Ptr (FunPtr C_AsyncReadyCallback))
-> AsyncReadyCallback -> C_AsyncReadyCallback
Gio.Callbacks.wrap_AsyncReadyCallback (forall a. a -> Maybe a
Just Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback) AsyncReadyCallback
jCallback)
forall a. Storable a => Ptr a -> a -> IO ()
poke Ptr (FunPtr C_AsyncReadyCallback)
ptrcallback FunPtr C_AsyncReadyCallback
jCallback'
forall (m :: * -> *) a. Monad m => a -> m a
return FunPtr C_AsyncReadyCallback
jCallback'
let userData :: Ptr a
userData = forall a. Ptr a
nullPtr
Ptr SocketClient
-> CString
-> Word16
-> Ptr Cancellable
-> FunPtr C_AsyncReadyCallback
-> Ptr ()
-> IO ()
g_socket_client_connect_to_uri_async Ptr SocketClient
client' CString
uri' Word16
defaultPort Ptr Cancellable
maybeCancellable FunPtr C_AsyncReadyCallback
maybeCallback forall a. Ptr a
userData
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
cancellable forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall a. Ptr a -> IO ()
freeMem CString
uri'
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToUriAsyncMethodInfo
instance (signature ~ (T.Text -> Word16 -> Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsSocketClient a, Gio.Cancellable.IsCancellable b) => O.OverloadedMethod SocketClientConnectToUriAsyncMethodInfo a signature where
overloadedMethod = socketClientConnectToUriAsync
instance O.OverloadedMethodInfo SocketClientConnectToUriAsyncMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToUriAsync",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToUriAsync"
})
#endif
foreign import ccall "g_socket_client_connect_to_uri_finish" g_socket_client_connect_to_uri_finish ::
Ptr SocketClient ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO (Ptr Gio.SocketConnection.SocketConnection)
socketClientConnectToUriFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m Gio.SocketConnection.SocketConnection
socketClientConnectToUriFinish :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsAsyncResult b) =>
a -> b -> m SocketConnection
socketClientConnectToUriFinish a
client b
result_ = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr AsyncResult
result_' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
result_
forall a b. IO a -> IO b -> IO a
onException (do
Ptr SocketConnection
result <- forall a. (Ptr (Ptr GError) -> IO a) -> IO a
propagateGError forall a b. (a -> b) -> a -> b
$ Ptr SocketClient
-> Ptr AsyncResult -> Ptr (Ptr GError) -> IO (Ptr SocketConnection)
g_socket_client_connect_to_uri_finish Ptr SocketClient
client' Ptr AsyncResult
result_'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientConnectToUriFinish" Ptr SocketConnection
result
SocketConnection
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr SocketConnection -> SocketConnection
Gio.SocketConnection.SocketConnection) Ptr SocketConnection
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
result_
forall (m :: * -> *) a. Monad m => a -> m a
return SocketConnection
result'
) (do
forall (m :: * -> *) a. Monad m => a -> m a
return ()
)
#if defined(ENABLE_OVERLOADING)
data SocketClientConnectToUriFinishMethodInfo
instance (signature ~ (b -> m Gio.SocketConnection.SocketConnection), MonadIO m, IsSocketClient a, Gio.AsyncResult.IsAsyncResult b) => O.OverloadedMethod SocketClientConnectToUriFinishMethodInfo a signature where
overloadedMethod = socketClientConnectToUriFinish
instance O.OverloadedMethodInfo SocketClientConnectToUriFinishMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientConnectToUriFinish",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientConnectToUriFinish"
})
#endif
foreign import ccall "g_socket_client_get_enable_proxy" g_socket_client_get_enable_proxy ::
Ptr SocketClient ->
IO CInt
socketClientGetEnableProxy ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Bool
socketClientGetEnableProxy :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m Bool
socketClientGetEnableProxy a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CInt
result <- Ptr SocketClient -> IO CInt
g_socket_client_get_enable_proxy Ptr SocketClient
client'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetEnableProxyMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetEnableProxyMethodInfo a signature where
overloadedMethod = socketClientGetEnableProxy
instance O.OverloadedMethodInfo SocketClientGetEnableProxyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetEnableProxy",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetEnableProxy"
})
#endif
foreign import ccall "g_socket_client_get_family" g_socket_client_get_family ::
Ptr SocketClient ->
IO CUInt
socketClientGetFamily ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Gio.Enums.SocketFamily
socketClientGetFamily :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m SocketFamily
socketClientGetFamily a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CUInt
result <- Ptr SocketClient -> IO CUInt
g_socket_client_get_family Ptr SocketClient
client'
let result' :: SocketFamily
result' = (forall a. Enum a => Int -> a
toEnum forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return SocketFamily
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetFamilyMethodInfo
instance (signature ~ (m Gio.Enums.SocketFamily), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetFamilyMethodInfo a signature where
overloadedMethod = socketClientGetFamily
instance O.OverloadedMethodInfo SocketClientGetFamilyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetFamily",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetFamily"
})
#endif
foreign import ccall "g_socket_client_get_local_address" g_socket_client_get_local_address ::
Ptr SocketClient ->
IO (Ptr Gio.SocketAddress.SocketAddress)
socketClientGetLocalAddress ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m (Maybe Gio.SocketAddress.SocketAddress)
socketClientGetLocalAddress :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m (Maybe SocketAddress)
socketClientGetLocalAddress a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr SocketAddress
result <- Ptr SocketClient -> IO (Ptr SocketAddress)
g_socket_client_get_local_address Ptr SocketClient
client'
Maybe SocketAddress
maybeResult <- forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr SocketAddress
result forall a b. (a -> b) -> a -> b
$ \Ptr SocketAddress
result' -> do
SocketAddress
result'' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr SocketAddress -> SocketAddress
Gio.SocketAddress.SocketAddress) Ptr SocketAddress
result'
forall (m :: * -> *) a. Monad m => a -> m a
return SocketAddress
result''
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe SocketAddress
maybeResult
#if defined(ENABLE_OVERLOADING)
data SocketClientGetLocalAddressMethodInfo
instance (signature ~ (m (Maybe Gio.SocketAddress.SocketAddress)), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetLocalAddressMethodInfo a signature where
overloadedMethod = socketClientGetLocalAddress
instance O.OverloadedMethodInfo SocketClientGetLocalAddressMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetLocalAddress",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetLocalAddress"
})
#endif
foreign import ccall "g_socket_client_get_protocol" g_socket_client_get_protocol ::
Ptr SocketClient ->
IO CInt
socketClientGetProtocol ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Gio.Enums.SocketProtocol
socketClientGetProtocol :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m SocketProtocol
socketClientGetProtocol a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CInt
result <- Ptr SocketClient -> IO CInt
g_socket_client_get_protocol Ptr SocketClient
client'
let result' :: SocketProtocol
result' = (forall a. Enum a => Int -> a
toEnum forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a b. (Integral a, Num b) => a -> b
fromIntegral) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return SocketProtocol
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetProtocolMethodInfo
instance (signature ~ (m Gio.Enums.SocketProtocol), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetProtocolMethodInfo a signature where
overloadedMethod = socketClientGetProtocol
instance O.OverloadedMethodInfo SocketClientGetProtocolMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetProtocol",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetProtocol"
})
#endif
foreign import ccall "g_socket_client_get_proxy_resolver" g_socket_client_get_proxy_resolver ::
Ptr SocketClient ->
IO (Ptr Gio.ProxyResolver.ProxyResolver)
socketClientGetProxyResolver ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Gio.ProxyResolver.ProxyResolver
socketClientGetProxyResolver :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m ProxyResolver
socketClientGetProxyResolver a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr ProxyResolver
result <- Ptr SocketClient -> IO (Ptr ProxyResolver)
g_socket_client_get_proxy_resolver Ptr SocketClient
client'
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"socketClientGetProxyResolver" Ptr ProxyResolver
result
ProxyResolver
result' <- (forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ProxyResolver -> ProxyResolver
Gio.ProxyResolver.ProxyResolver) Ptr ProxyResolver
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ProxyResolver
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetProxyResolverMethodInfo
instance (signature ~ (m Gio.ProxyResolver.ProxyResolver), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetProxyResolverMethodInfo a signature where
overloadedMethod = socketClientGetProxyResolver
instance O.OverloadedMethodInfo SocketClientGetProxyResolverMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetProxyResolver",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetProxyResolver"
})
#endif
foreign import ccall "g_socket_client_get_socket_type" g_socket_client_get_socket_type ::
Ptr SocketClient ->
IO CUInt
socketClientGetSocketType ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Gio.Enums.SocketType
socketClientGetSocketType :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m SocketType
socketClientGetSocketType a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CUInt
result <- Ptr SocketClient -> IO CUInt
g_socket_client_get_socket_type Ptr SocketClient
client'
let result' :: SocketType
result' = (forall a. Enum a => Int -> a
toEnum forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a b. (Integral a, Num b) => a -> b
fromIntegral) CUInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return SocketType
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetSocketTypeMethodInfo
instance (signature ~ (m Gio.Enums.SocketType), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetSocketTypeMethodInfo a signature where
overloadedMethod = socketClientGetSocketType
instance O.OverloadedMethodInfo SocketClientGetSocketTypeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetSocketType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetSocketType"
})
#endif
foreign import ccall "g_socket_client_get_timeout" g_socket_client_get_timeout ::
Ptr SocketClient ->
IO Word32
socketClientGetTimeout ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Word32
socketClientGetTimeout :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m Word32
socketClientGetTimeout a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Word32
result <- Ptr SocketClient -> IO Word32
g_socket_client_get_timeout Ptr SocketClient
client'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return Word32
result
#if defined(ENABLE_OVERLOADING)
data SocketClientGetTimeoutMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetTimeoutMethodInfo a signature where
overloadedMethod = socketClientGetTimeout
instance O.OverloadedMethodInfo SocketClientGetTimeoutMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetTimeout",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetTimeout"
})
#endif
foreign import ccall "g_socket_client_get_tls" g_socket_client_get_tls ::
Ptr SocketClient ->
IO CInt
socketClientGetTls ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m Bool
socketClientGetTls :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m Bool
socketClientGetTls a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CInt
result <- Ptr SocketClient -> IO CInt
g_socket_client_get_tls Ptr SocketClient
client'
let result' :: Bool
result' = (forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetTlsMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetTlsMethodInfo a signature where
overloadedMethod = socketClientGetTls
instance O.OverloadedMethodInfo SocketClientGetTlsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetTls",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetTls"
})
#endif
foreign import ccall "g_socket_client_get_tls_validation_flags" g_socket_client_get_tls_validation_flags ::
Ptr SocketClient ->
IO CUInt
{-# DEPRECATED socketClientGetTlsValidationFlags ["(Since version 2.72)","Do not attempt to ignore validation errors."] #-}
socketClientGetTlsValidationFlags ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> m [Gio.Flags.TlsCertificateFlags]
socketClientGetTlsValidationFlags :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> m [TlsCertificateFlags]
socketClientGetTlsValidationFlags a
client = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
CUInt
result <- Ptr SocketClient -> IO CUInt
g_socket_client_get_tls_validation_flags Ptr SocketClient
client'
let result' :: [TlsCertificateFlags]
result' = forall a b. (Storable a, Integral a, Bits a, IsGFlag b) => a -> [b]
wordToGFlags CUInt
result
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return [TlsCertificateFlags]
result'
#if defined(ENABLE_OVERLOADING)
data SocketClientGetTlsValidationFlagsMethodInfo
instance (signature ~ (m [Gio.Flags.TlsCertificateFlags]), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientGetTlsValidationFlagsMethodInfo a signature where
overloadedMethod = socketClientGetTlsValidationFlags
instance O.OverloadedMethodInfo SocketClientGetTlsValidationFlagsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientGetTlsValidationFlags",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientGetTlsValidationFlags"
})
#endif
foreign import ccall "g_socket_client_set_enable_proxy" g_socket_client_set_enable_proxy ::
Ptr SocketClient ->
CInt ->
IO ()
socketClientSetEnableProxy ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Bool
-> m ()
socketClientSetEnableProxy :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> Bool -> m ()
socketClientSetEnableProxy a
client Bool
enable = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let enable' :: CInt
enable' = (forall a b. (Integral a, Num b) => a -> b
P.fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
P.fromEnum) Bool
enable
Ptr SocketClient -> CInt -> IO ()
g_socket_client_set_enable_proxy Ptr SocketClient
client' CInt
enable'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetEnableProxyMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetEnableProxyMethodInfo a signature where
overloadedMethod = socketClientSetEnableProxy
instance O.OverloadedMethodInfo SocketClientSetEnableProxyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetEnableProxy",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetEnableProxy"
})
#endif
foreign import ccall "g_socket_client_set_family" g_socket_client_set_family ::
Ptr SocketClient ->
CUInt ->
IO ()
socketClientSetFamily ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Gio.Enums.SocketFamily
-> m ()
socketClientSetFamily :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> SocketFamily -> m ()
socketClientSetFamily a
client SocketFamily
family = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let family' :: CUInt
family' = (forall a b. (Integral a, Num b) => a -> b
fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
fromEnum) SocketFamily
family
Ptr SocketClient -> CUInt -> IO ()
g_socket_client_set_family Ptr SocketClient
client' CUInt
family'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetFamilyMethodInfo
instance (signature ~ (Gio.Enums.SocketFamily -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetFamilyMethodInfo a signature where
overloadedMethod = socketClientSetFamily
instance O.OverloadedMethodInfo SocketClientSetFamilyMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetFamily",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetFamily"
})
#endif
foreign import ccall "g_socket_client_set_local_address" g_socket_client_set_local_address ::
Ptr SocketClient ->
Ptr Gio.SocketAddress.SocketAddress ->
IO ()
socketClientSetLocalAddress ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.SocketAddress.IsSocketAddress b) =>
a
-> Maybe (b)
-> m ()
socketClientSetLocalAddress :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsSocketAddress b) =>
a -> Maybe b -> m ()
socketClientSetLocalAddress a
client Maybe b
address = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr SocketAddress
maybeAddress <- case Maybe b
address of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jAddress -> do
Ptr SocketAddress
jAddress' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jAddress
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr SocketAddress
jAddress'
Ptr SocketClient -> Ptr SocketAddress -> IO ()
g_socket_client_set_local_address Ptr SocketClient
client' Ptr SocketAddress
maybeAddress
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
address forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetLocalAddressMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsSocketClient a, Gio.SocketAddress.IsSocketAddress b) => O.OverloadedMethod SocketClientSetLocalAddressMethodInfo a signature where
overloadedMethod = socketClientSetLocalAddress
instance O.OverloadedMethodInfo SocketClientSetLocalAddressMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetLocalAddress",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetLocalAddress"
})
#endif
foreign import ccall "g_socket_client_set_protocol" g_socket_client_set_protocol ::
Ptr SocketClient ->
CInt ->
IO ()
socketClientSetProtocol ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Gio.Enums.SocketProtocol
-> m ()
socketClientSetProtocol :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> SocketProtocol -> m ()
socketClientSetProtocol a
client SocketProtocol
protocol = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let protocol' :: CInt
protocol' = (forall a b. (Integral a, Num b) => a -> b
fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
fromEnum) SocketProtocol
protocol
Ptr SocketClient -> CInt -> IO ()
g_socket_client_set_protocol Ptr SocketClient
client' CInt
protocol'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetProtocolMethodInfo
instance (signature ~ (Gio.Enums.SocketProtocol -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetProtocolMethodInfo a signature where
overloadedMethod = socketClientSetProtocol
instance O.OverloadedMethodInfo SocketClientSetProtocolMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetProtocol",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetProtocol"
})
#endif
foreign import ccall "g_socket_client_set_proxy_resolver" g_socket_client_set_proxy_resolver ::
Ptr SocketClient ->
Ptr Gio.ProxyResolver.ProxyResolver ->
IO ()
socketClientSetProxyResolver ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a, Gio.ProxyResolver.IsProxyResolver b) =>
a
-> Maybe (b)
-> m ()
socketClientSetProxyResolver :: forall (m :: * -> *) a b.
(HasCallStack, MonadIO m, IsSocketClient a, IsProxyResolver b) =>
a -> Maybe b -> m ()
socketClientSetProxyResolver a
client Maybe b
proxyResolver = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr ProxyResolver
maybeProxyResolver <- case Maybe b
proxyResolver of
Maybe b
Nothing -> forall (m :: * -> *) a. Monad m => a -> m a
return forall a. Ptr a
nullPtr
Just b
jProxyResolver -> do
Ptr ProxyResolver
jProxyResolver' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
jProxyResolver
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr ProxyResolver
jProxyResolver'
Ptr SocketClient -> Ptr ProxyResolver -> IO ()
g_socket_client_set_proxy_resolver Ptr SocketClient
client' Ptr ProxyResolver
maybeProxyResolver
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => Maybe a -> (a -> m ()) -> m ()
whenJust Maybe b
proxyResolver forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetProxyResolverMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsSocketClient a, Gio.ProxyResolver.IsProxyResolver b) => O.OverloadedMethod SocketClientSetProxyResolverMethodInfo a signature where
overloadedMethod = socketClientSetProxyResolver
instance O.OverloadedMethodInfo SocketClientSetProxyResolverMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetProxyResolver",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetProxyResolver"
})
#endif
foreign import ccall "g_socket_client_set_socket_type" g_socket_client_set_socket_type ::
Ptr SocketClient ->
CUInt ->
IO ()
socketClientSetSocketType ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Gio.Enums.SocketType
-> m ()
socketClientSetSocketType :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> SocketType -> m ()
socketClientSetSocketType a
client SocketType
type_ = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let type_' :: CUInt
type_' = (forall a b. (Integral a, Num b) => a -> b
fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
fromEnum) SocketType
type_
Ptr SocketClient -> CUInt -> IO ()
g_socket_client_set_socket_type Ptr SocketClient
client' CUInt
type_'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetSocketTypeMethodInfo
instance (signature ~ (Gio.Enums.SocketType -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetSocketTypeMethodInfo a signature where
overloadedMethod = socketClientSetSocketType
instance O.OverloadedMethodInfo SocketClientSetSocketTypeMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetSocketType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetSocketType"
})
#endif
foreign import ccall "g_socket_client_set_timeout" g_socket_client_set_timeout ::
Ptr SocketClient ->
Word32 ->
IO ()
socketClientSetTimeout ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Word32
-> m ()
socketClientSetTimeout :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> Word32 -> m ()
socketClientSetTimeout a
client Word32
timeout = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
Ptr SocketClient -> Word32 -> IO ()
g_socket_client_set_timeout Ptr SocketClient
client' Word32
timeout
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetTimeoutMethodInfo
instance (signature ~ (Word32 -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetTimeoutMethodInfo a signature where
overloadedMethod = socketClientSetTimeout
instance O.OverloadedMethodInfo SocketClientSetTimeoutMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetTimeout",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetTimeout"
})
#endif
foreign import ccall "g_socket_client_set_tls" g_socket_client_set_tls ::
Ptr SocketClient ->
CInt ->
IO ()
socketClientSetTls ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> Bool
-> m ()
socketClientSetTls :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> Bool -> m ()
socketClientSetTls a
client Bool
tls = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let tls' :: CInt
tls' = (forall a b. (Integral a, Num b) => a -> b
P.fromIntegral forall b c a. (b -> c) -> (a -> b) -> a -> c
. forall a. Enum a => a -> Int
P.fromEnum) Bool
tls
Ptr SocketClient -> CInt -> IO ()
g_socket_client_set_tls Ptr SocketClient
client' CInt
tls'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetTlsMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetTlsMethodInfo a signature where
overloadedMethod = socketClientSetTls
instance O.OverloadedMethodInfo SocketClientSetTlsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetTls",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetTls"
})
#endif
foreign import ccall "g_socket_client_set_tls_validation_flags" g_socket_client_set_tls_validation_flags ::
Ptr SocketClient ->
CUInt ->
IO ()
{-# DEPRECATED socketClientSetTlsValidationFlags ["(Since version 2.72)","Do not attempt to ignore validation errors."] #-}
socketClientSetTlsValidationFlags ::
(B.CallStack.HasCallStack, MonadIO m, IsSocketClient a) =>
a
-> [Gio.Flags.TlsCertificateFlags]
-> m ()
socketClientSetTlsValidationFlags :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsSocketClient a) =>
a -> [TlsCertificateFlags] -> m ()
socketClientSetTlsValidationFlags a
client [TlsCertificateFlags]
flags = forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO forall a b. (a -> b) -> a -> b
$ do
Ptr SocketClient
client' <- forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
client
let flags' :: CUInt
flags' = forall b a. (Num b, IsGFlag a) => [a] -> b
gflagsToWord [TlsCertificateFlags]
flags
Ptr SocketClient -> CUInt -> IO ()
g_socket_client_set_tls_validation_flags Ptr SocketClient
client' CUInt
flags'
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
client
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data SocketClientSetTlsValidationFlagsMethodInfo
instance (signature ~ ([Gio.Flags.TlsCertificateFlags] -> m ()), MonadIO m, IsSocketClient a) => O.OverloadedMethod SocketClientSetTlsValidationFlagsMethodInfo a signature where
overloadedMethod = socketClientSetTlsValidationFlags
instance O.OverloadedMethodInfo SocketClientSetTlsValidationFlagsMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Objects.SocketClient.socketClientSetTlsValidationFlags",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.30/docs/GI-Gio-Objects-SocketClient.html#v:socketClientSetTlsValidationFlags"
})
#endif