{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2.Objects.URIRequest
(
URIRequest(..) ,
IsURIRequest ,
toURIRequest ,
#if defined(ENABLE_OVERLOADING)
ResolveURIRequestMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
URIRequestGetHttpHeadersMethodInfo ,
#endif
uRIRequestGetHttpHeaders ,
#if defined(ENABLE_OVERLOADING)
URIRequestGetHttpMethodMethodInfo ,
#endif
uRIRequestGetHttpMethod ,
#if defined(ENABLE_OVERLOADING)
URIRequestGetUriMethodInfo ,
#endif
uRIRequestGetUri ,
uRIRequestNew ,
#if defined(ENABLE_OVERLOADING)
URIRequestSetUriMethodInfo ,
#endif
uRIRequestSetUri ,
#if defined(ENABLE_OVERLOADING)
URIRequestUriPropertyInfo ,
#endif
constructURIRequestUri ,
getURIRequestUri ,
setURIRequestUri ,
#if defined(ENABLE_OVERLOADING)
uRIRequestUri ,
#endif
) 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.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.Soup.Structs.MessageHeaders as Soup.MessageHeaders
newtype URIRequest = URIRequest (SP.ManagedPtr URIRequest)
deriving (URIRequest -> URIRequest -> Bool
(URIRequest -> URIRequest -> Bool)
-> (URIRequest -> URIRequest -> Bool) -> Eq URIRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: URIRequest -> URIRequest -> Bool
== :: URIRequest -> URIRequest -> Bool
$c/= :: URIRequest -> URIRequest -> Bool
/= :: URIRequest -> URIRequest -> Bool
Eq)
instance SP.ManagedPtrNewtype URIRequest where
toManagedPtr :: URIRequest -> ManagedPtr URIRequest
toManagedPtr (URIRequest ManagedPtr URIRequest
p) = ManagedPtr URIRequest
p
foreign import ccall "webkit_uri_request_get_type"
c_webkit_uri_request_get_type :: IO B.Types.GType
instance B.Types.TypedObject URIRequest where
glibType :: IO GType
glibType = IO GType
c_webkit_uri_request_get_type
instance B.Types.GObject URIRequest
class (SP.GObject o, O.IsDescendantOf URIRequest o) => IsURIRequest o
instance (SP.GObject o, O.IsDescendantOf URIRequest o) => IsURIRequest o
instance O.HasParentTypes URIRequest
type instance O.ParentTypes URIRequest = '[GObject.Object.Object]
toURIRequest :: (MIO.MonadIO m, IsURIRequest o) => o -> m URIRequest
toURIRequest :: forall (m :: * -> *) o.
(MonadIO m, IsURIRequest o) =>
o -> m URIRequest
toURIRequest = IO URIRequest -> m URIRequest
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO URIRequest -> m URIRequest)
-> (o -> IO URIRequest) -> o -> m URIRequest
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr URIRequest -> URIRequest) -> o -> IO URIRequest
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr URIRequest -> URIRequest
URIRequest
instance B.GValue.IsGValue (Maybe URIRequest) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_webkit_uri_request_get_type
gvalueSet_ :: Ptr GValue -> Maybe URIRequest -> IO ()
gvalueSet_ Ptr GValue
gv Maybe URIRequest
P.Nothing = Ptr GValue -> Ptr URIRequest -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr URIRequest
forall a. Ptr a
FP.nullPtr :: FP.Ptr URIRequest)
gvalueSet_ Ptr GValue
gv (P.Just URIRequest
obj) = URIRequest -> (Ptr URIRequest -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr URIRequest
obj (Ptr GValue -> Ptr URIRequest -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe URIRequest)
gvalueGet_ Ptr GValue
gv = do
Ptr URIRequest
ptr <- Ptr GValue -> IO (Ptr URIRequest)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr URIRequest)
if Ptr URIRequest
ptr Ptr URIRequest -> Ptr URIRequest -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr URIRequest
forall a. Ptr a
FP.nullPtr
then URIRequest -> Maybe URIRequest
forall a. a -> Maybe a
P.Just (URIRequest -> Maybe URIRequest)
-> IO URIRequest -> IO (Maybe URIRequest)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr URIRequest -> URIRequest)
-> Ptr URIRequest -> IO URIRequest
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr URIRequest -> URIRequest
URIRequest Ptr URIRequest
ptr
else Maybe URIRequest -> IO (Maybe URIRequest)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe URIRequest
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveURIRequestMethod (t :: Symbol) (o :: *) :: * where
ResolveURIRequestMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveURIRequestMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveURIRequestMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveURIRequestMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveURIRequestMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveURIRequestMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveURIRequestMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveURIRequestMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveURIRequestMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveURIRequestMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveURIRequestMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveURIRequestMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveURIRequestMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveURIRequestMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveURIRequestMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveURIRequestMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveURIRequestMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveURIRequestMethod "getHttpHeaders" o = URIRequestGetHttpHeadersMethodInfo
ResolveURIRequestMethod "getHttpMethod" o = URIRequestGetHttpMethodMethodInfo
ResolveURIRequestMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveURIRequestMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveURIRequestMethod "getUri" o = URIRequestGetUriMethodInfo
ResolveURIRequestMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveURIRequestMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveURIRequestMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveURIRequestMethod "setUri" o = URIRequestSetUriMethodInfo
ResolveURIRequestMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveURIRequestMethod t URIRequest, O.OverloadedMethod info URIRequest p) => OL.IsLabel t (URIRequest -> 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 ~ ResolveURIRequestMethod t URIRequest, O.OverloadedMethod info URIRequest p, R.HasField t URIRequest p) => R.HasField t URIRequest p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveURIRequestMethod t URIRequest, O.OverloadedMethodInfo info URIRequest) => OL.IsLabel t (O.MethodProxy info URIRequest) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
getURIRequestUri :: (MonadIO m, IsURIRequest o) => o -> m T.Text
getURIRequestUri :: forall (m :: * -> *) o. (MonadIO m, IsURIRequest o) => o -> m Text
getURIRequestUri o
obj = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ Text -> IO (Maybe Text) -> IO Text
forall a. HasCallStack => Text -> IO (Maybe a) -> IO a
checkUnexpectedNothing Text
"getURIRequestUri" (IO (Maybe Text) -> IO Text) -> IO (Maybe Text) -> IO Text
forall a b. (a -> b) -> a -> b
$ o -> String -> IO (Maybe Text)
forall a. GObject a => a -> String -> IO (Maybe Text)
B.Properties.getObjectPropertyString o
obj String
"uri"
setURIRequestUri :: (MonadIO m, IsURIRequest o) => o -> T.Text -> m ()
setURIRequestUri :: forall (m :: * -> *) o.
(MonadIO m, IsURIRequest o) =>
o -> Text -> m ()
setURIRequestUri o
obj Text
val = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
o -> String -> Maybe Text -> IO ()
forall a. GObject a => a -> String -> Maybe Text -> IO ()
B.Properties.setObjectPropertyString o
obj String
"uri" (Text -> Maybe Text
forall a. a -> Maybe a
Just Text
val)
constructURIRequestUri :: (IsURIRequest o, MIO.MonadIO m) => T.Text -> m (GValueConstruct o)
constructURIRequestUri :: forall o (m :: * -> *).
(IsURIRequest o, MonadIO m) =>
Text -> m (GValueConstruct o)
constructURIRequestUri Text
val = IO (GValueConstruct o) -> m (GValueConstruct o)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> m (GValueConstruct o))
-> IO (GValueConstruct o) -> m (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ do
IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a. IO a -> IO a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO (GValueConstruct o) -> IO (GValueConstruct o))
-> IO (GValueConstruct o) -> IO (GValueConstruct o)
forall a b. (a -> b) -> a -> b
$ String -> Maybe Text -> IO (GValueConstruct o)
forall o. String -> Maybe Text -> IO (GValueConstruct o)
B.Properties.constructObjectPropertyString String
"uri" (Text -> Maybe Text
forall a. a -> Maybe a
P.Just Text
val)
#if defined(ENABLE_OVERLOADING)
data URIRequestUriPropertyInfo
instance AttrInfo URIRequestUriPropertyInfo where
type AttrAllowedOps URIRequestUriPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrBaseTypeConstraint URIRequestUriPropertyInfo = IsURIRequest
type AttrSetTypeConstraint URIRequestUriPropertyInfo = (~) T.Text
type AttrTransferTypeConstraint URIRequestUriPropertyInfo = (~) T.Text
type AttrTransferType URIRequestUriPropertyInfo = T.Text
type AttrGetType URIRequestUriPropertyInfo = T.Text
type AttrLabel URIRequestUriPropertyInfo = "uri"
type AttrOrigin URIRequestUriPropertyInfo = URIRequest
attrGet = getURIRequestUri
attrSet = setURIRequestUri
attrTransfer _ v = do
return v
attrConstruct = constructURIRequestUri
attrClear = undefined
dbgAttrInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2.Objects.URIRequest.uri"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.29/docs/GI-WebKit2-Objects-URIRequest.html#g:attr:uri"
})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList URIRequest
type instance O.AttributeList URIRequest = URIRequestAttributeList
type URIRequestAttributeList = ('[ '("uri", URIRequestUriPropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
uRIRequestUri :: AttrLabelProxy "uri"
uRIRequestUri = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList URIRequest = URIRequestSignalList
type URIRequestSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_uri_request_new" webkit_uri_request_new ::
CString ->
IO (Ptr URIRequest)
uRIRequestNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m URIRequest
uRIRequestNew :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Text -> m URIRequest
uRIRequestNew Text
uri = IO URIRequest -> m URIRequest
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO URIRequest -> m URIRequest) -> IO URIRequest -> m URIRequest
forall a b. (a -> b) -> a -> b
$ do
CString
uri' <- Text -> IO CString
textToCString Text
uri
Ptr URIRequest
result <- CString -> IO (Ptr URIRequest)
webkit_uri_request_new CString
uri'
Text -> Ptr URIRequest -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRIRequestNew" Ptr URIRequest
result
URIRequest
result' <- ((ManagedPtr URIRequest -> URIRequest)
-> Ptr URIRequest -> IO URIRequest
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr URIRequest -> URIRequest
URIRequest) Ptr URIRequest
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
uri'
URIRequest -> IO URIRequest
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return URIRequest
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "webkit_uri_request_get_http_headers" ::
Ptr URIRequest ->
IO (Ptr Soup.MessageHeaders.MessageHeaders)
uRIRequestGetHttpHeaders ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m (Maybe Soup.MessageHeaders.MessageHeaders)
a
request = IO (Maybe MessageHeaders) -> m (Maybe MessageHeaders)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe MessageHeaders) -> m (Maybe MessageHeaders))
-> IO (Maybe MessageHeaders) -> m (Maybe MessageHeaders)
forall a b. (a -> b) -> a -> b
$ do
Ptr URIRequest
request' <- a -> IO (Ptr URIRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr MessageHeaders
result <- Ptr URIRequest -> IO (Ptr MessageHeaders)
webkit_uri_request_get_http_headers Ptr URIRequest
request'
Maybe MessageHeaders
maybeResult <- Ptr MessageHeaders
-> (Ptr MessageHeaders -> IO MessageHeaders)
-> IO (Maybe MessageHeaders)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr MessageHeaders
result ((Ptr MessageHeaders -> IO MessageHeaders)
-> IO (Maybe MessageHeaders))
-> (Ptr MessageHeaders -> IO MessageHeaders)
-> IO (Maybe MessageHeaders)
forall a b. (a -> b) -> a -> b
$ \Ptr MessageHeaders
result' -> do
MessageHeaders
result'' <- ((ManagedPtr MessageHeaders -> MessageHeaders)
-> Ptr MessageHeaders -> IO MessageHeaders
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
newBoxed ManagedPtr MessageHeaders -> MessageHeaders
Soup.MessageHeaders.MessageHeaders) Ptr MessageHeaders
result'
MessageHeaders -> IO MessageHeaders
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return MessageHeaders
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Maybe MessageHeaders -> IO (Maybe MessageHeaders)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe MessageHeaders
maybeResult
#if defined(ENABLE_OVERLOADING)
data URIRequestGetHttpHeadersMethodInfo
instance (signature ~ (m (Maybe Soup.MessageHeaders.MessageHeaders)), MonadIO m, IsURIRequest a) => O.OverloadedMethod URIRequestGetHttpHeadersMethodInfo a signature where
overloadedMethod = uRIRequestGetHttpHeaders
instance O.OverloadedMethodInfo URIRequestGetHttpHeadersMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2.Objects.URIRequest.uRIRequestGetHttpHeaders",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.29/docs/GI-WebKit2-Objects-URIRequest.html#v:uRIRequestGetHttpHeaders"
})
#endif
foreign import ccall "webkit_uri_request_get_http_method" webkit_uri_request_get_http_method ::
Ptr URIRequest ->
IO CString
uRIRequestGetHttpMethod ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m (Maybe T.Text)
uRIRequestGetHttpMethod :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsURIRequest a) =>
a -> m (Maybe Text)
uRIRequestGetHttpMethod a
request = IO (Maybe Text) -> m (Maybe Text)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe Text) -> m (Maybe Text))
-> IO (Maybe Text) -> m (Maybe Text)
forall a b. (a -> b) -> a -> b
$ do
Ptr URIRequest
request' <- a -> IO (Ptr URIRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
CString
result <- Ptr URIRequest -> IO CString
webkit_uri_request_get_http_method Ptr URIRequest
request'
Maybe Text
maybeResult <- CString -> (CString -> IO Text) -> IO (Maybe Text)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull CString
result ((CString -> IO Text) -> IO (Maybe Text))
-> (CString -> IO Text) -> IO (Maybe Text)
forall a b. (a -> b) -> a -> b
$ \CString
result' -> do
Text
result'' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result'
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result''
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Maybe Text -> IO (Maybe Text)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Text
maybeResult
#if defined(ENABLE_OVERLOADING)
data URIRequestGetHttpMethodMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m, IsURIRequest a) => O.OverloadedMethod URIRequestGetHttpMethodMethodInfo a signature where
overloadedMethod = uRIRequestGetHttpMethod
instance O.OverloadedMethodInfo URIRequestGetHttpMethodMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2.Objects.URIRequest.uRIRequestGetHttpMethod",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.29/docs/GI-WebKit2-Objects-URIRequest.html#v:uRIRequestGetHttpMethod"
})
#endif
foreign import ccall "webkit_uri_request_get_uri" webkit_uri_request_get_uri ::
Ptr URIRequest ->
IO CString
uRIRequestGetUri ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> m T.Text
uRIRequestGetUri :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsURIRequest a) =>
a -> m Text
uRIRequestGetUri a
request = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr URIRequest
request' <- a -> IO (Ptr URIRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
CString
result <- Ptr URIRequest -> IO CString
webkit_uri_request_get_uri Ptr URIRequest
request'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRIRequestGetUri" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data URIRequestGetUriMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURIRequest a) => O.OverloadedMethod URIRequestGetUriMethodInfo a signature where
overloadedMethod = uRIRequestGetUri
instance O.OverloadedMethodInfo URIRequestGetUriMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2.Objects.URIRequest.uRIRequestGetUri",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.29/docs/GI-WebKit2-Objects-URIRequest.html#v:uRIRequestGetUri"
})
#endif
foreign import ccall "webkit_uri_request_set_uri" webkit_uri_request_set_uri ::
Ptr URIRequest ->
CString ->
IO ()
uRIRequestSetUri ::
(B.CallStack.HasCallStack, MonadIO m, IsURIRequest a) =>
a
-> T.Text
-> m ()
uRIRequestSetUri :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsURIRequest a) =>
a -> Text -> m ()
uRIRequestSetUri a
request Text
uri = IO () -> m ()
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr URIRequest
request' <- a -> IO (Ptr URIRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
CString
uri' <- Text -> IO CString
textToCString Text
uri
Ptr URIRequest -> CString -> IO ()
webkit_uri_request_set_uri Ptr URIRequest
request' CString
uri'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
uri'
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data URIRequestSetUriMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsURIRequest a) => O.OverloadedMethod URIRequestSetUriMethodInfo a signature where
overloadedMethod = uRIRequestSetUri
instance O.OverloadedMethodInfo URIRequestSetUriMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2.Objects.URIRequest.uRIRequestSetUri",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2-4.0.29/docs/GI-WebKit2-Objects-URIRequest.html#v:uRIRequestSetUri"
})
#endif