{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2.Objects.URISchemeRequest
(
URISchemeRequest(..) ,
IsURISchemeRequest ,
toURISchemeRequest ,
#if defined(ENABLE_OVERLOADING)
ResolveURISchemeRequestMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
URISchemeRequestFinishMethodInfo ,
#endif
uRISchemeRequestFinish ,
#if defined(ENABLE_OVERLOADING)
URISchemeRequestFinishErrorMethodInfo ,
#endif
uRISchemeRequestFinishError ,
#if defined(ENABLE_OVERLOADING)
URISchemeRequestGetPathMethodInfo ,
#endif
uRISchemeRequestGetPath ,
#if defined(ENABLE_OVERLOADING)
URISchemeRequestGetSchemeMethodInfo ,
#endif
uRISchemeRequestGetScheme ,
#if defined(ENABLE_OVERLOADING)
URISchemeRequestGetUriMethodInfo ,
#endif
uRISchemeRequestGetUri ,
#if defined(ENABLE_OVERLOADING)
URISchemeRequestGetWebViewMethodInfo ,
#endif
uRISchemeRequestGetWebView ,
) 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.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
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.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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Objects.InputStream as Gio.InputStream
import {-# SOURCE #-} qualified GI.WebKit2.Objects.WebView as WebKit2.WebView
newtype URISchemeRequest = URISchemeRequest (SP.ManagedPtr URISchemeRequest)
deriving (URISchemeRequest -> URISchemeRequest -> Bool
(URISchemeRequest -> URISchemeRequest -> Bool)
-> (URISchemeRequest -> URISchemeRequest -> Bool)
-> Eq URISchemeRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: URISchemeRequest -> URISchemeRequest -> Bool
$c/= :: URISchemeRequest -> URISchemeRequest -> Bool
== :: URISchemeRequest -> URISchemeRequest -> Bool
$c== :: URISchemeRequest -> URISchemeRequest -> Bool
Eq)
instance SP.ManagedPtrNewtype URISchemeRequest where
toManagedPtr :: URISchemeRequest -> ManagedPtr URISchemeRequest
toManagedPtr (URISchemeRequest ManagedPtr URISchemeRequest
p) = ManagedPtr URISchemeRequest
p
foreign import ccall "webkit_uri_scheme_request_get_type"
c_webkit_uri_scheme_request_get_type :: IO B.Types.GType
instance B.Types.TypedObject URISchemeRequest where
glibType :: IO GType
glibType = IO GType
c_webkit_uri_scheme_request_get_type
instance B.Types.GObject URISchemeRequest
instance B.GValue.IsGValue URISchemeRequest where
toGValue :: URISchemeRequest -> IO GValue
toGValue URISchemeRequest
o = do
GType
gtype <- IO GType
c_webkit_uri_scheme_request_get_type
URISchemeRequest
-> (Ptr URISchemeRequest -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr URISchemeRequest
o (GType
-> (GValue -> Ptr URISchemeRequest -> IO ())
-> Ptr URISchemeRequest
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr URISchemeRequest -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO URISchemeRequest
fromGValue GValue
gv = do
Ptr URISchemeRequest
ptr <- GValue -> IO (Ptr URISchemeRequest)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr URISchemeRequest)
(ManagedPtr URISchemeRequest -> URISchemeRequest)
-> Ptr URISchemeRequest -> IO URISchemeRequest
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr URISchemeRequest -> URISchemeRequest
URISchemeRequest Ptr URISchemeRequest
ptr
class (SP.GObject o, O.IsDescendantOf URISchemeRequest o) => IsURISchemeRequest o
instance (SP.GObject o, O.IsDescendantOf URISchemeRequest o) => IsURISchemeRequest o
instance O.HasParentTypes URISchemeRequest
type instance O.ParentTypes URISchemeRequest = '[GObject.Object.Object]
toURISchemeRequest :: (MonadIO m, IsURISchemeRequest o) => o -> m URISchemeRequest
toURISchemeRequest :: o -> m URISchemeRequest
toURISchemeRequest = IO URISchemeRequest -> m URISchemeRequest
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO URISchemeRequest -> m URISchemeRequest)
-> (o -> IO URISchemeRequest) -> o -> m URISchemeRequest
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr URISchemeRequest -> URISchemeRequest)
-> o -> IO URISchemeRequest
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr URISchemeRequest -> URISchemeRequest
URISchemeRequest
#if defined(ENABLE_OVERLOADING)
type family ResolveURISchemeRequestMethod (t :: Symbol) (o :: *) :: * where
ResolveURISchemeRequestMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveURISchemeRequestMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveURISchemeRequestMethod "finish" o = URISchemeRequestFinishMethodInfo
ResolveURISchemeRequestMethod "finishError" o = URISchemeRequestFinishErrorMethodInfo
ResolveURISchemeRequestMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveURISchemeRequestMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveURISchemeRequestMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveURISchemeRequestMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveURISchemeRequestMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveURISchemeRequestMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveURISchemeRequestMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveURISchemeRequestMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveURISchemeRequestMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveURISchemeRequestMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveURISchemeRequestMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveURISchemeRequestMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveURISchemeRequestMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveURISchemeRequestMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveURISchemeRequestMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveURISchemeRequestMethod "getPath" o = URISchemeRequestGetPathMethodInfo
ResolveURISchemeRequestMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveURISchemeRequestMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveURISchemeRequestMethod "getScheme" o = URISchemeRequestGetSchemeMethodInfo
ResolveURISchemeRequestMethod "getUri" o = URISchemeRequestGetUriMethodInfo
ResolveURISchemeRequestMethod "getWebView" o = URISchemeRequestGetWebViewMethodInfo
ResolveURISchemeRequestMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveURISchemeRequestMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveURISchemeRequestMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveURISchemeRequestMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveURISchemeRequestMethod t URISchemeRequest, O.MethodInfo info URISchemeRequest p) => OL.IsLabel t (URISchemeRequest -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList URISchemeRequest
type instance O.AttributeList URISchemeRequest = URISchemeRequestAttributeList
type URISchemeRequestAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList URISchemeRequest = URISchemeRequestSignalList
type URISchemeRequestSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_uri_scheme_request_finish" webkit_uri_scheme_request_finish ::
Ptr URISchemeRequest ->
Ptr Gio.InputStream.InputStream ->
Int64 ->
CString ->
IO ()
uRISchemeRequestFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a, Gio.InputStream.IsInputStream b) =>
a
-> b
-> Int64
-> Maybe (T.Text)
-> m ()
uRISchemeRequestFinish :: a -> b -> Int64 -> Maybe Text -> m ()
uRISchemeRequestFinish a
request b
stream Int64
streamLength Maybe Text
contentType = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr InputStream
stream' <- b -> IO (Ptr InputStream)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr b
stream
Ptr CChar
maybeContentType <- case Maybe Text
contentType of
Maybe Text
Nothing -> Ptr CChar -> IO (Ptr CChar)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CChar
forall a. Ptr a
nullPtr
Just Text
jContentType -> do
Ptr CChar
jContentType' <- Text -> IO (Ptr CChar)
textToCString Text
jContentType
Ptr CChar -> IO (Ptr CChar)
forall (m :: * -> *) a. Monad m => a -> m a
return Ptr CChar
jContentType'
Ptr URISchemeRequest
-> Ptr InputStream -> Int64 -> Ptr CChar -> IO ()
webkit_uri_scheme_request_finish Ptr URISchemeRequest
request' Ptr InputStream
stream' Int64
streamLength Ptr CChar
maybeContentType
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
b -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr b
stream
Ptr CChar -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr CChar
maybeContentType
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestFinishMethodInfo
instance (signature ~ (b -> Int64 -> Maybe (T.Text) -> m ()), MonadIO m, IsURISchemeRequest a, Gio.InputStream.IsInputStream b) => O.MethodInfo URISchemeRequestFinishMethodInfo a signature where
overloadedMethod = uRISchemeRequestFinish
#endif
foreign import ccall "webkit_uri_scheme_request_finish_error" webkit_uri_scheme_request_finish_error ::
Ptr URISchemeRequest ->
Ptr GError ->
IO ()
uRISchemeRequestFinishError ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) =>
a
-> GError
-> m ()
uRISchemeRequestFinishError :: a -> GError -> m ()
uRISchemeRequestFinishError a
request GError
error_ = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr GError
error_' <- GError -> IO (Ptr GError)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr GError
error_
Ptr URISchemeRequest -> Ptr GError -> IO ()
webkit_uri_scheme_request_finish_error Ptr URISchemeRequest
request' Ptr GError
error_'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
GError -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr GError
error_
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestFinishErrorMethodInfo
instance (signature ~ (GError -> m ()), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestFinishErrorMethodInfo a signature where
overloadedMethod = uRISchemeRequestFinishError
#endif
foreign import ccall "webkit_uri_scheme_request_get_path" webkit_uri_scheme_request_get_path ::
Ptr URISchemeRequest ->
IO CString
uRISchemeRequestGetPath ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) =>
a
-> m T.Text
uRISchemeRequestGetPath :: a -> m Text
uRISchemeRequestGetPath a
request = IO Text -> m Text
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 URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr CChar
result <- Ptr URISchemeRequest -> IO (Ptr CChar)
webkit_uri_scheme_request_get_path Ptr URISchemeRequest
request'
Text -> Ptr CChar -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRISchemeRequestGetPath" Ptr CChar
result
Text
result' <- HasCallStack => Ptr CChar -> IO Text
Ptr CChar -> IO Text
cstringToText Ptr CChar
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestGetPathMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetPathMethodInfo a signature where
overloadedMethod = uRISchemeRequestGetPath
#endif
foreign import ccall "webkit_uri_scheme_request_get_scheme" webkit_uri_scheme_request_get_scheme ::
Ptr URISchemeRequest ->
IO CString
uRISchemeRequestGetScheme ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) =>
a
-> m T.Text
uRISchemeRequestGetScheme :: a -> m Text
uRISchemeRequestGetScheme a
request = IO Text -> m Text
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 URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr CChar
result <- Ptr URISchemeRequest -> IO (Ptr CChar)
webkit_uri_scheme_request_get_scheme Ptr URISchemeRequest
request'
Text -> Ptr CChar -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRISchemeRequestGetScheme" Ptr CChar
result
Text
result' <- HasCallStack => Ptr CChar -> IO Text
Ptr CChar -> IO Text
cstringToText Ptr CChar
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestGetSchemeMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetSchemeMethodInfo a signature where
overloadedMethod = uRISchemeRequestGetScheme
#endif
foreign import ccall "webkit_uri_scheme_request_get_uri" webkit_uri_scheme_request_get_uri ::
Ptr URISchemeRequest ->
IO CString
uRISchemeRequestGetUri ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) =>
a
-> m T.Text
uRISchemeRequestGetUri :: a -> m Text
uRISchemeRequestGetUri a
request = IO Text -> m Text
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 URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr CChar
result <- Ptr URISchemeRequest -> IO (Ptr CChar)
webkit_uri_scheme_request_get_uri Ptr URISchemeRequest
request'
Text -> Ptr CChar -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRISchemeRequestGetUri" Ptr CChar
result
Text
result' <- HasCallStack => Ptr CChar -> IO Text
Ptr CChar -> IO Text
cstringToText Ptr CChar
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestGetUriMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetUriMethodInfo a signature where
overloadedMethod = uRISchemeRequestGetUri
#endif
foreign import ccall "webkit_uri_scheme_request_get_web_view" webkit_uri_scheme_request_get_web_view ::
Ptr URISchemeRequest ->
IO (Ptr WebKit2.WebView.WebView)
uRISchemeRequestGetWebView ::
(B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) =>
a
-> m WebKit2.WebView.WebView
uRISchemeRequestGetWebView :: a -> m WebView
uRISchemeRequestGetWebView a
request = IO WebView -> m WebView
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WebView -> m WebView) -> IO WebView -> m WebView
forall a b. (a -> b) -> a -> b
$ do
Ptr URISchemeRequest
request' <- a -> IO (Ptr URISchemeRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr WebView
result <- Ptr URISchemeRequest -> IO (Ptr WebView)
webkit_uri_scheme_request_get_web_view Ptr URISchemeRequest
request'
Text -> Ptr WebView -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"uRISchemeRequestGetWebView" Ptr WebView
result
WebView
result' <- ((ManagedPtr WebView -> WebView) -> Ptr WebView -> IO WebView
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr WebView -> WebView
WebKit2.WebView.WebView) Ptr WebView
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
WebView -> IO WebView
forall (m :: * -> *) a. Monad m => a -> m a
return WebView
result'
#if defined(ENABLE_OVERLOADING)
data URISchemeRequestGetWebViewMethodInfo
instance (signature ~ (m WebKit2.WebView.WebView), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetWebViewMethodInfo a signature where
overloadedMethod = uRISchemeRequestGetWebView
#endif