{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2.Structs.WebViewSessionState
(
WebViewSessionState(..) ,
noWebViewSessionState ,
#if defined(ENABLE_OVERLOADING)
ResolveWebViewSessionStateMethod ,
#endif
webViewSessionStateNew ,
#if defined(ENABLE_OVERLOADING)
WebViewSessionStateRefMethodInfo ,
#endif
webViewSessionStateRef ,
#if defined(ENABLE_OVERLOADING)
WebViewSessionStateSerializeMethodInfo ,
#endif
webViewSessionStateSerialize ,
#if defined(ENABLE_OVERLOADING)
WebViewSessionStateUnrefMethodInfo ,
#endif
webViewSessionStateUnref ,
) 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.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 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.GLib.Structs.Bytes as GLib.Bytes
newtype WebViewSessionState = WebViewSessionState (ManagedPtr WebViewSessionState)
deriving (WebViewSessionState -> WebViewSessionState -> Bool
(WebViewSessionState -> WebViewSessionState -> Bool)
-> (WebViewSessionState -> WebViewSessionState -> Bool)
-> Eq WebViewSessionState
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: WebViewSessionState -> WebViewSessionState -> Bool
$c/= :: WebViewSessionState -> WebViewSessionState -> Bool
== :: WebViewSessionState -> WebViewSessionState -> Bool
$c== :: WebViewSessionState -> WebViewSessionState -> Bool
Eq)
foreign import ccall "webkit_web_view_session_state_get_type" c_webkit_web_view_session_state_get_type ::
IO GType
instance BoxedObject WebViewSessionState where
boxedType :: WebViewSessionState -> IO GType
boxedType _ = IO GType
c_webkit_web_view_session_state_get_type
instance B.GValue.IsGValue WebViewSessionState where
toGValue :: WebViewSessionState -> IO GValue
toGValue o :: WebViewSessionState
o = do
GType
gtype <- IO GType
c_webkit_web_view_session_state_get_type
WebViewSessionState
-> (Ptr WebViewSessionState -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr WebViewSessionState
o (GType
-> (GValue -> Ptr WebViewSessionState -> IO ())
-> Ptr WebViewSessionState
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr WebViewSessionState -> IO ()
forall a. GValue -> Ptr a -> IO ()
B.GValue.set_boxed)
fromGValue :: GValue -> IO WebViewSessionState
fromGValue gv :: GValue
gv = do
Ptr WebViewSessionState
ptr <- GValue -> IO (Ptr WebViewSessionState)
forall b. GValue -> IO (Ptr b)
B.GValue.get_boxed GValue
gv :: IO (Ptr WebViewSessionState)
(ManagedPtr WebViewSessionState -> WebViewSessionState)
-> Ptr WebViewSessionState -> IO WebViewSessionState
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.newBoxed ManagedPtr WebViewSessionState -> WebViewSessionState
WebViewSessionState Ptr WebViewSessionState
ptr
noWebViewSessionState :: Maybe WebViewSessionState
noWebViewSessionState :: Maybe WebViewSessionState
noWebViewSessionState = Maybe WebViewSessionState
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList WebViewSessionState
type instance O.AttributeList WebViewSessionState = WebViewSessionStateAttributeList
type WebViewSessionStateAttributeList = ('[ ] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_web_view_session_state_new" webkit_web_view_session_state_new ::
Ptr GLib.Bytes.Bytes ->
IO (Ptr WebViewSessionState)
webViewSessionStateNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
GLib.Bytes.Bytes
-> m WebViewSessionState
webViewSessionStateNew :: Bytes -> m WebViewSessionState
webViewSessionStateNew data_ :: Bytes
data_ = IO WebViewSessionState -> m WebViewSessionState
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WebViewSessionState -> m WebViewSessionState)
-> IO WebViewSessionState -> m WebViewSessionState
forall a b. (a -> b) -> a -> b
$ do
Ptr Bytes
data_' <- Bytes -> IO (Ptr Bytes)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr Bytes
data_
Ptr WebViewSessionState
result <- Ptr Bytes -> IO (Ptr WebViewSessionState)
webkit_web_view_session_state_new Ptr Bytes
data_'
Text -> Ptr WebViewSessionState -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "webViewSessionStateNew" Ptr WebViewSessionState
result
WebViewSessionState
result' <- ((ManagedPtr WebViewSessionState -> WebViewSessionState)
-> Ptr WebViewSessionState -> IO WebViewSessionState
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr WebViewSessionState -> WebViewSessionState
WebViewSessionState) Ptr WebViewSessionState
result
Bytes -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr Bytes
data_
WebViewSessionState -> IO WebViewSessionState
forall (m :: * -> *) a. Monad m => a -> m a
return WebViewSessionState
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "webkit_web_view_session_state_ref" webkit_web_view_session_state_ref ::
Ptr WebViewSessionState ->
IO (Ptr WebViewSessionState)
webViewSessionStateRef ::
(B.CallStack.HasCallStack, MonadIO m) =>
WebViewSessionState
-> m WebViewSessionState
webViewSessionStateRef :: WebViewSessionState -> m WebViewSessionState
webViewSessionStateRef state :: WebViewSessionState
state = IO WebViewSessionState -> m WebViewSessionState
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO WebViewSessionState -> m WebViewSessionState)
-> IO WebViewSessionState -> m WebViewSessionState
forall a b. (a -> b) -> a -> b
$ do
Ptr WebViewSessionState
state' <- WebViewSessionState -> IO (Ptr WebViewSessionState)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr WebViewSessionState
state
Ptr WebViewSessionState
result <- Ptr WebViewSessionState -> IO (Ptr WebViewSessionState)
webkit_web_view_session_state_ref Ptr WebViewSessionState
state'
Text -> Ptr WebViewSessionState -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "webViewSessionStateRef" Ptr WebViewSessionState
result
WebViewSessionState
result' <- ((ManagedPtr WebViewSessionState -> WebViewSessionState)
-> Ptr WebViewSessionState -> IO WebViewSessionState
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr WebViewSessionState -> WebViewSessionState
WebViewSessionState) Ptr WebViewSessionState
result
WebViewSessionState -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr WebViewSessionState
state
WebViewSessionState -> IO WebViewSessionState
forall (m :: * -> *) a. Monad m => a -> m a
return WebViewSessionState
result'
#if defined(ENABLE_OVERLOADING)
data WebViewSessionStateRefMethodInfo
instance (signature ~ (m WebViewSessionState), MonadIO m) => O.MethodInfo WebViewSessionStateRefMethodInfo WebViewSessionState signature where
overloadedMethod = webViewSessionStateRef
#endif
foreign import ccall "webkit_web_view_session_state_serialize" webkit_web_view_session_state_serialize ::
Ptr WebViewSessionState ->
IO (Ptr GLib.Bytes.Bytes)
webViewSessionStateSerialize ::
(B.CallStack.HasCallStack, MonadIO m) =>
WebViewSessionState
-> m GLib.Bytes.Bytes
webViewSessionStateSerialize :: WebViewSessionState -> m Bytes
webViewSessionStateSerialize state :: WebViewSessionState
state = IO Bytes -> m Bytes
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bytes -> m Bytes) -> IO Bytes -> m Bytes
forall a b. (a -> b) -> a -> b
$ do
Ptr WebViewSessionState
state' <- WebViewSessionState -> IO (Ptr WebViewSessionState)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr WebViewSessionState
state
Ptr Bytes
result <- Ptr WebViewSessionState -> IO (Ptr Bytes)
webkit_web_view_session_state_serialize Ptr WebViewSessionState
state'
Text -> Ptr Bytes -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL "webViewSessionStateSerialize" Ptr Bytes
result
Bytes
result' <- ((ManagedPtr Bytes -> Bytes) -> Ptr Bytes -> IO Bytes
forall a.
(HasCallStack, BoxedObject a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr Bytes -> Bytes
GLib.Bytes.Bytes) Ptr Bytes
result
WebViewSessionState -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr WebViewSessionState
state
Bytes -> IO Bytes
forall (m :: * -> *) a. Monad m => a -> m a
return Bytes
result'
#if defined(ENABLE_OVERLOADING)
data WebViewSessionStateSerializeMethodInfo
instance (signature ~ (m GLib.Bytes.Bytes), MonadIO m) => O.MethodInfo WebViewSessionStateSerializeMethodInfo WebViewSessionState signature where
overloadedMethod = webViewSessionStateSerialize
#endif
foreign import ccall "webkit_web_view_session_state_unref" webkit_web_view_session_state_unref ::
Ptr WebViewSessionState ->
IO ()
webViewSessionStateUnref ::
(B.CallStack.HasCallStack, MonadIO m) =>
WebViewSessionState
-> m ()
webViewSessionStateUnref :: WebViewSessionState -> m ()
webViewSessionStateUnref state :: WebViewSessionState
state = 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 WebViewSessionState
state' <- WebViewSessionState -> IO (Ptr WebViewSessionState)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr WebViewSessionState
state
Ptr WebViewSessionState -> IO ()
webkit_web_view_session_state_unref Ptr WebViewSessionState
state'
WebViewSessionState -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr WebViewSessionState
state
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data WebViewSessionStateUnrefMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo WebViewSessionStateUnrefMethodInfo WebViewSessionState signature where
overloadedMethod = webViewSessionStateUnref
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveWebViewSessionStateMethod (t :: Symbol) (o :: *) :: * where
ResolveWebViewSessionStateMethod "ref" o = WebViewSessionStateRefMethodInfo
ResolveWebViewSessionStateMethod "serialize" o = WebViewSessionStateSerializeMethodInfo
ResolveWebViewSessionStateMethod "unref" o = WebViewSessionStateUnrefMethodInfo
ResolveWebViewSessionStateMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveWebViewSessionStateMethod t WebViewSessionState, O.MethodInfo info WebViewSessionState p) => OL.IsLabel t (WebViewSessionState -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif