{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Wnck.Objects.Application
(
Application(..) ,
IsApplication ,
toApplication ,
#if defined(ENABLE_OVERLOADING)
ResolveApplicationMethod ,
#endif
applicationGet ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetIconMethodInfo ,
#endif
applicationGetIcon ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetIconIsFallbackMethodInfo ,
#endif
applicationGetIconIsFallback ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetIconNameMethodInfo ,
#endif
applicationGetIconName ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetMiniIconMethodInfo ,
#endif
applicationGetMiniIcon ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetNWindowsMethodInfo ,
#endif
applicationGetNWindows ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetNameMethodInfo ,
#endif
applicationGetName ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetPidMethodInfo ,
#endif
applicationGetPid ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetStartupIdMethodInfo ,
#endif
applicationGetStartupId ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetWindowsMethodInfo ,
#endif
applicationGetWindows ,
#if defined(ENABLE_OVERLOADING)
ApplicationGetXidMethodInfo ,
#endif
applicationGetXid ,
ApplicationIconChangedCallback ,
#if defined(ENABLE_OVERLOADING)
ApplicationIconChangedSignalInfo ,
#endif
C_ApplicationIconChangedCallback ,
afterApplicationIconChanged ,
genClosure_ApplicationIconChanged ,
mk_ApplicationIconChangedCallback ,
noApplicationIconChangedCallback ,
onApplicationIconChanged ,
wrap_ApplicationIconChangedCallback ,
ApplicationNameChangedCallback ,
#if defined(ENABLE_OVERLOADING)
ApplicationNameChangedSignalInfo ,
#endif
C_ApplicationNameChangedCallback ,
afterApplicationNameChanged ,
genClosure_ApplicationNameChanged ,
mk_ApplicationNameChangedCallback ,
noApplicationNameChangedCallback ,
onApplicationNameChanged ,
wrap_ApplicationNameChangedCallback ,
) 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.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 GHC.Records as R
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.GdkPixbuf.Objects.Pixbuf as GdkPixbuf.Pixbuf
import {-# SOURCE #-} qualified GI.Wnck.Objects.Window as Wnck.Window
newtype Application = Application (SP.ManagedPtr Application)
deriving (Application -> Application -> Bool
(Application -> Application -> Bool)
-> (Application -> Application -> Bool) -> Eq Application
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: Application -> Application -> Bool
$c/= :: Application -> Application -> Bool
== :: Application -> Application -> Bool
$c== :: Application -> Application -> Bool
Eq)
instance SP.ManagedPtrNewtype Application where
toManagedPtr :: Application -> ManagedPtr Application
toManagedPtr (Application ManagedPtr Application
p) = ManagedPtr Application
p
foreign import ccall "wnck_application_get_type"
c_wnck_application_get_type :: IO B.Types.GType
instance B.Types.TypedObject Application where
glibType :: IO GType
glibType = IO GType
c_wnck_application_get_type
instance B.Types.GObject Application
class (SP.GObject o, O.IsDescendantOf Application o) => IsApplication o
instance (SP.GObject o, O.IsDescendantOf Application o) => IsApplication o
instance O.HasParentTypes Application
type instance O.ParentTypes Application = '[GObject.Object.Object]
toApplication :: (MIO.MonadIO m, IsApplication o) => o -> m Application
toApplication :: forall (m :: * -> *) o.
(MonadIO m, IsApplication o) =>
o -> m Application
toApplication = IO Application -> m Application
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO Application -> m Application)
-> (o -> IO Application) -> o -> m Application
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr Application -> Application) -> o -> IO Application
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr Application -> Application
Application
instance B.GValue.IsGValue (Maybe Application) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_wnck_application_get_type
gvalueSet_ :: Ptr GValue -> Maybe Application -> IO ()
gvalueSet_ Ptr GValue
gv Maybe Application
P.Nothing = Ptr GValue -> Ptr Application -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr Application
forall a. Ptr a
FP.nullPtr :: FP.Ptr Application)
gvalueSet_ Ptr GValue
gv (P.Just Application
obj) = Application -> (Ptr Application -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr Application
obj (Ptr GValue -> Ptr Application -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe Application)
gvalueGet_ Ptr GValue
gv = do
Ptr Application
ptr <- Ptr GValue -> IO (Ptr Application)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr Application)
if Ptr Application
ptr Ptr Application -> Ptr Application -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr Application
forall a. Ptr a
FP.nullPtr
then Application -> Maybe Application
forall a. a -> Maybe a
P.Just (Application -> Maybe Application)
-> IO Application -> IO (Maybe Application)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr Application -> Application)
-> Ptr Application -> IO Application
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr Application -> Application
Application Ptr Application
ptr
else Maybe Application -> IO (Maybe Application)
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe Application
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveApplicationMethod (t :: Symbol) (o :: *) :: * where
ResolveApplicationMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveApplicationMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveApplicationMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveApplicationMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveApplicationMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveApplicationMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveApplicationMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveApplicationMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveApplicationMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveApplicationMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveApplicationMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveApplicationMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveApplicationMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveApplicationMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveApplicationMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveApplicationMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveApplicationMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveApplicationMethod "getIcon" o = ApplicationGetIconMethodInfo
ResolveApplicationMethod "getIconIsFallback" o = ApplicationGetIconIsFallbackMethodInfo
ResolveApplicationMethod "getIconName" o = ApplicationGetIconNameMethodInfo
ResolveApplicationMethod "getMiniIcon" o = ApplicationGetMiniIconMethodInfo
ResolveApplicationMethod "getNWindows" o = ApplicationGetNWindowsMethodInfo
ResolveApplicationMethod "getName" o = ApplicationGetNameMethodInfo
ResolveApplicationMethod "getPid" o = ApplicationGetPidMethodInfo
ResolveApplicationMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveApplicationMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveApplicationMethod "getStartupId" o = ApplicationGetStartupIdMethodInfo
ResolveApplicationMethod "getWindows" o = ApplicationGetWindowsMethodInfo
ResolveApplicationMethod "getXid" o = ApplicationGetXidMethodInfo
ResolveApplicationMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveApplicationMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveApplicationMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveApplicationMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveApplicationMethod t Application, O.OverloadedMethod info Application p) => OL.IsLabel t (Application -> 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 ~ ResolveApplicationMethod t Application, O.OverloadedMethod info Application p, R.HasField t Application p) => R.HasField t Application p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveApplicationMethod t Application, O.OverloadedMethodInfo info Application) => OL.IsLabel t (O.MethodProxy info Application) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type ApplicationIconChangedCallback =
IO ()
noApplicationIconChangedCallback :: Maybe ApplicationIconChangedCallback
noApplicationIconChangedCallback :: Maybe (IO ())
noApplicationIconChangedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_ApplicationIconChangedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ApplicationIconChangedCallback :: C_ApplicationIconChangedCallback -> IO (FunPtr C_ApplicationIconChangedCallback)
genClosure_ApplicationIconChanged :: MonadIO m => ApplicationIconChangedCallback -> m (GClosure C_ApplicationIconChangedCallback)
genClosure_ApplicationIconChanged :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_ApplicationIconChangedCallback)
genClosure_ApplicationIconChanged IO ()
cb = IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback))
-> IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationIconChangedCallback IO ()
cb
C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationIconChangedCallback C_ApplicationIconChangedCallback
cb' IO (FunPtr C_ApplicationIconChangedCallback)
-> (FunPtr C_ApplicationIconChangedCallback
-> IO (GClosure C_ApplicationIconChangedCallback))
-> IO (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ApplicationIconChangedCallback
-> IO (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ApplicationIconChangedCallback ::
ApplicationIconChangedCallback ->
C_ApplicationIconChangedCallback
wrap_ApplicationIconChangedCallback :: IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationIconChangedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onApplicationIconChanged :: (IsApplication a, MonadIO m) => a -> ApplicationIconChangedCallback -> m SignalHandlerId
onApplicationIconChanged :: forall a (m :: * -> *).
(IsApplication a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onApplicationIconChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationIconChangedCallback IO ()
cb
FunPtr C_ApplicationIconChangedCallback
cb'' <- C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationIconChangedCallback C_ApplicationIconChangedCallback
cb'
a
-> Text
-> FunPtr C_ApplicationIconChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"icon-changed" FunPtr C_ApplicationIconChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterApplicationIconChanged :: (IsApplication a, MonadIO m) => a -> ApplicationIconChangedCallback -> m SignalHandlerId
afterApplicationIconChanged :: forall a (m :: * -> *).
(IsApplication a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterApplicationIconChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationIconChangedCallback IO ()
cb
FunPtr C_ApplicationIconChangedCallback
cb'' <- C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationIconChangedCallback C_ApplicationIconChangedCallback
cb'
a
-> Text
-> FunPtr C_ApplicationIconChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"icon-changed" FunPtr C_ApplicationIconChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ApplicationIconChangedSignalInfo
instance SignalInfo ApplicationIconChangedSignalInfo where
type HaskellCallbackType ApplicationIconChangedSignalInfo = ApplicationIconChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ApplicationIconChangedCallback cb
cb'' <- mk_ApplicationIconChangedCallback cb'
connectSignalFunPtr obj "icon-changed" cb'' connectMode detail
#endif
type ApplicationNameChangedCallback =
IO ()
noApplicationNameChangedCallback :: Maybe ApplicationNameChangedCallback
noApplicationNameChangedCallback :: Maybe (IO ())
noApplicationNameChangedCallback = Maybe (IO ())
forall a. Maybe a
Nothing
type C_ApplicationNameChangedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ApplicationNameChangedCallback :: C_ApplicationNameChangedCallback -> IO (FunPtr C_ApplicationNameChangedCallback)
genClosure_ApplicationNameChanged :: MonadIO m => ApplicationNameChangedCallback -> m (GClosure C_ApplicationNameChangedCallback)
genClosure_ApplicationNameChanged :: forall (m :: * -> *).
MonadIO m =>
IO () -> m (GClosure C_ApplicationIconChangedCallback)
genClosure_ApplicationNameChanged IO ()
cb = IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback))
-> IO (GClosure C_ApplicationIconChangedCallback)
-> m (GClosure C_ApplicationIconChangedCallback)
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationNameChangedCallback IO ()
cb
C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationNameChangedCallback C_ApplicationIconChangedCallback
cb' IO (FunPtr C_ApplicationIconChangedCallback)
-> (FunPtr C_ApplicationIconChangedCallback
-> IO (GClosure C_ApplicationIconChangedCallback))
-> IO (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= FunPtr C_ApplicationIconChangedCallback
-> IO (GClosure C_ApplicationIconChangedCallback)
forall (m :: * -> *) a. MonadIO m => FunPtr a -> m (GClosure a)
B.GClosure.newGClosure
wrap_ApplicationNameChangedCallback ::
ApplicationNameChangedCallback ->
C_ApplicationNameChangedCallback
wrap_ApplicationNameChangedCallback :: IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationNameChangedCallback IO ()
_cb Ptr ()
_ Ptr ()
_ = do
IO ()
_cb
onApplicationNameChanged :: (IsApplication a, MonadIO m) => a -> ApplicationNameChangedCallback -> m SignalHandlerId
onApplicationNameChanged :: forall a (m :: * -> *).
(IsApplication a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
onApplicationNameChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationNameChangedCallback IO ()
cb
FunPtr C_ApplicationIconChangedCallback
cb'' <- C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationNameChangedCallback C_ApplicationIconChangedCallback
cb'
a
-> Text
-> FunPtr C_ApplicationIconChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"name-changed" FunPtr C_ApplicationIconChangedCallback
cb'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterApplicationNameChanged :: (IsApplication a, MonadIO m) => a -> ApplicationNameChangedCallback -> m SignalHandlerId
afterApplicationNameChanged :: forall a (m :: * -> *).
(IsApplication a, MonadIO m) =>
a -> IO () -> m SignalHandlerId
afterApplicationNameChanged a
obj IO ()
cb = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let cb' :: C_ApplicationIconChangedCallback
cb' = IO () -> C_ApplicationIconChangedCallback
wrap_ApplicationNameChangedCallback IO ()
cb
FunPtr C_ApplicationIconChangedCallback
cb'' <- C_ApplicationIconChangedCallback
-> IO (FunPtr C_ApplicationIconChangedCallback)
mk_ApplicationNameChangedCallback C_ApplicationIconChangedCallback
cb'
a
-> Text
-> FunPtr C_ApplicationIconChangedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"name-changed" FunPtr C_ApplicationIconChangedCallback
cb'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ApplicationNameChangedSignalInfo
instance SignalInfo ApplicationNameChangedSignalInfo where
type HaskellCallbackType ApplicationNameChangedSignalInfo = ApplicationNameChangedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ApplicationNameChangedCallback cb
cb'' <- mk_ApplicationNameChangedCallback cb'
connectSignalFunPtr obj "name-changed" cb'' connectMode detail
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList Application
type instance O.AttributeList Application = ApplicationAttributeList
type ApplicationAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList Application = ApplicationSignalList
type ApplicationSignalList = ('[ '("iconChanged", ApplicationIconChangedSignalInfo), '("nameChanged", ApplicationNameChangedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "wnck_application_get_icon" wnck_application_get_icon ::
Ptr Application ->
IO (Ptr GdkPixbuf.Pixbuf.Pixbuf)
applicationGetIcon ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m GdkPixbuf.Pixbuf.Pixbuf
applicationGetIcon :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Pixbuf
applicationGetIcon a
app = IO Pixbuf -> m Pixbuf
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Pixbuf -> m Pixbuf) -> IO Pixbuf -> m Pixbuf
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
Ptr Pixbuf
result <- Ptr Application -> IO (Ptr Pixbuf)
wnck_application_get_icon Ptr Application
app'
Text -> Ptr Pixbuf -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGetIcon" Ptr Pixbuf
result
Pixbuf
result' <- ((ManagedPtr Pixbuf -> Pixbuf) -> Ptr Pixbuf -> IO Pixbuf
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Pixbuf -> Pixbuf
GdkPixbuf.Pixbuf.Pixbuf) Ptr Pixbuf
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Pixbuf -> IO Pixbuf
forall (m :: * -> *) a. Monad m => a -> m a
return Pixbuf
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetIconMethodInfo
instance (signature ~ (m GdkPixbuf.Pixbuf.Pixbuf), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetIconMethodInfo a signature where
overloadedMethod = applicationGetIcon
instance O.OverloadedMethodInfo ApplicationGetIconMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetIcon",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetIcon"
}
#endif
foreign import ccall "wnck_application_get_icon_is_fallback" wnck_application_get_icon_is_fallback ::
Ptr Application ->
IO CInt
applicationGetIconIsFallback ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m Bool
applicationGetIconIsFallback :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Bool
applicationGetIconIsFallback a
app = IO Bool -> m Bool
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Bool -> m Bool) -> IO Bool -> m Bool
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
CInt
result <- Ptr Application -> IO CInt
wnck_application_get_icon_is_fallback Ptr Application
app'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Bool -> IO Bool
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetIconIsFallbackMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetIconIsFallbackMethodInfo a signature where
overloadedMethod = applicationGetIconIsFallback
instance O.OverloadedMethodInfo ApplicationGetIconIsFallbackMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetIconIsFallback",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetIconIsFallback"
}
#endif
foreign import ccall "wnck_application_get_icon_name" wnck_application_get_icon_name ::
Ptr Application ->
IO CString
applicationGetIconName ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m T.Text
applicationGetIconName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Text
applicationGetIconName a
app = 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 Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
CString
result <- Ptr Application -> IO CString
wnck_application_get_icon_name Ptr Application
app'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGetIconName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetIconNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetIconNameMethodInfo a signature where
overloadedMethod = applicationGetIconName
instance O.OverloadedMethodInfo ApplicationGetIconNameMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetIconName",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetIconName"
}
#endif
foreign import ccall "wnck_application_get_mini_icon" wnck_application_get_mini_icon ::
Ptr Application ->
IO (Ptr GdkPixbuf.Pixbuf.Pixbuf)
applicationGetMiniIcon ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m GdkPixbuf.Pixbuf.Pixbuf
applicationGetMiniIcon :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Pixbuf
applicationGetMiniIcon a
app = IO Pixbuf -> m Pixbuf
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Pixbuf -> m Pixbuf) -> IO Pixbuf -> m Pixbuf
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
Ptr Pixbuf
result <- Ptr Application -> IO (Ptr Pixbuf)
wnck_application_get_mini_icon Ptr Application
app'
Text -> Ptr Pixbuf -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGetMiniIcon" Ptr Pixbuf
result
Pixbuf
result' <- ((ManagedPtr Pixbuf -> Pixbuf) -> Ptr Pixbuf -> IO Pixbuf
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Pixbuf -> Pixbuf
GdkPixbuf.Pixbuf.Pixbuf) Ptr Pixbuf
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Pixbuf -> IO Pixbuf
forall (m :: * -> *) a. Monad m => a -> m a
return Pixbuf
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetMiniIconMethodInfo
instance (signature ~ (m GdkPixbuf.Pixbuf.Pixbuf), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetMiniIconMethodInfo a signature where
overloadedMethod = applicationGetMiniIcon
instance O.OverloadedMethodInfo ApplicationGetMiniIconMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetMiniIcon",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetMiniIcon"
}
#endif
foreign import ccall "wnck_application_get_n_windows" wnck_application_get_n_windows ::
Ptr Application ->
IO Int32
applicationGetNWindows ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m Int32
applicationGetNWindows :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Int32
applicationGetNWindows a
app = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
Int32
result <- Ptr Application -> IO Int32
wnck_application_get_n_windows Ptr Application
app'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data ApplicationGetNWindowsMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetNWindowsMethodInfo a signature where
overloadedMethod = applicationGetNWindows
instance O.OverloadedMethodInfo ApplicationGetNWindowsMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetNWindows",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetNWindows"
}
#endif
foreign import ccall "wnck_application_get_name" wnck_application_get_name ::
Ptr Application ->
IO CString
applicationGetName ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m T.Text
applicationGetName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Text
applicationGetName a
app = 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 Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
CString
result <- Ptr Application -> IO CString
wnck_application_get_name Ptr Application
app'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGetName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetNameMethodInfo a signature where
overloadedMethod = applicationGetName
instance O.OverloadedMethodInfo ApplicationGetNameMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetName",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetName"
}
#endif
foreign import ccall "wnck_application_get_pid" wnck_application_get_pid ::
Ptr Application ->
IO Int32
applicationGetPid ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m Int32
applicationGetPid :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Int32
applicationGetPid a
app = IO Int32 -> m Int32
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Int32 -> m Int32) -> IO Int32 -> m Int32
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
Int32
result <- Ptr Application -> IO Int32
wnck_application_get_pid Ptr Application
app'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Int32 -> IO Int32
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data ApplicationGetPidMethodInfo
instance (signature ~ (m Int32), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetPidMethodInfo a signature where
overloadedMethod = applicationGetPid
instance O.OverloadedMethodInfo ApplicationGetPidMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetPid",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetPid"
}
#endif
foreign import ccall "wnck_application_get_startup_id" wnck_application_get_startup_id ::
Ptr Application ->
IO CString
applicationGetStartupId ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m T.Text
applicationGetStartupId :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m Text
applicationGetStartupId a
app = 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 Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
CString
result <- Ptr Application -> IO CString
wnck_application_get_startup_id Ptr Application
app'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGetStartupId" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
Text -> IO Text
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data ApplicationGetStartupIdMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetStartupIdMethodInfo a signature where
overloadedMethod = applicationGetStartupId
instance O.OverloadedMethodInfo ApplicationGetStartupIdMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetStartupId",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetStartupId"
}
#endif
foreign import ccall "wnck_application_get_windows" wnck_application_get_windows ::
Ptr Application ->
IO (Ptr (GList (Ptr Wnck.Window.Window)))
applicationGetWindows ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m [Wnck.Window.Window]
applicationGetWindows :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m [Window]
applicationGetWindows a
app = IO [Window] -> m [Window]
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Window] -> m [Window]) -> IO [Window] -> m [Window]
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
Ptr (GList (Ptr Window))
result <- Ptr Application -> IO (Ptr (GList (Ptr Window)))
wnck_application_get_windows Ptr Application
app'
[Ptr Window]
result' <- Ptr (GList (Ptr Window)) -> IO [Ptr Window]
forall a. Ptr (GList (Ptr a)) -> IO [Ptr a]
unpackGList Ptr (GList (Ptr Window))
result
[Window]
result'' <- (Ptr Window -> IO Window) -> [Ptr Window] -> IO [Window]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
mapM ((ManagedPtr Window -> Window) -> Ptr Window -> IO Window
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Window -> Window
Wnck.Window.Window) [Ptr Window]
result'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
[Window] -> IO [Window]
forall (m :: * -> *) a. Monad m => a -> m a
return [Window]
result''
#if defined(ENABLE_OVERLOADING)
data ApplicationGetWindowsMethodInfo
instance (signature ~ (m [Wnck.Window.Window]), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetWindowsMethodInfo a signature where
overloadedMethod = applicationGetWindows
instance O.OverloadedMethodInfo ApplicationGetWindowsMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetWindows",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetWindows"
}
#endif
foreign import ccall "wnck_application_get_xid" wnck_application_get_xid ::
Ptr Application ->
IO CULong
applicationGetXid ::
(B.CallStack.HasCallStack, MonadIO m, IsApplication a) =>
a
-> m CULong
applicationGetXid :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsApplication a) =>
a -> m SignalHandlerId
applicationGetXid a
app = IO SignalHandlerId -> m SignalHandlerId
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
app' <- a -> IO (Ptr Application)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
app
SignalHandlerId
result <- Ptr Application -> IO SignalHandlerId
wnck_application_get_xid Ptr Application
app'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
app
SignalHandlerId -> IO SignalHandlerId
forall (m :: * -> *) a. Monad m => a -> m a
return SignalHandlerId
result
#if defined(ENABLE_OVERLOADING)
data ApplicationGetXidMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsApplication a) => O.OverloadedMethod ApplicationGetXidMethodInfo a signature where
overloadedMethod = applicationGetXid
instance O.OverloadedMethodInfo ApplicationGetXidMethodInfo a where
overloadedMethodInfo = O.MethodInfo {
O.overloadedMethodName = "GI.Wnck.Objects.Application.applicationGetXid",
O.overloadedMethodURL = "https://hackage.haskell.org/package/gi-wnck-3.0.10/docs/GI-Wnck-Objects-Application.html#v:applicationGetXid"
}
#endif
foreign import ccall "wnck_application_get" wnck_application_get ::
CULong ->
IO (Ptr Application)
applicationGet ::
(B.CallStack.HasCallStack, MonadIO m) =>
CULong
-> m Application
applicationGet :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
SignalHandlerId -> m Application
applicationGet SignalHandlerId
xwindow = IO Application -> m Application
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Application -> m Application)
-> IO Application -> m Application
forall a b. (a -> b) -> a -> b
$ do
Ptr Application
result <- SignalHandlerId -> IO (Ptr Application)
wnck_application_get SignalHandlerId
xwindow
Text -> Ptr Application -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"applicationGet" Ptr Application
result
Application
result' <- ((ManagedPtr Application -> Application)
-> Ptr Application -> IO Application
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Application -> Application
Application) Ptr Application
result
Application -> IO Application
forall (m :: * -> *) a. Monad m => a -> m a
return Application
result'
#if defined(ENABLE_OVERLOADING)
#endif