module GI.Gio.Objects.Permission
(
Permission(..) ,
IsPermission ,
toPermission ,
noPermission ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionAcquireMethodInfo ,
#endif
permissionAcquire ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionAcquireAsyncMethodInfo ,
#endif
permissionAcquireAsync ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionAcquireFinishMethodInfo ,
#endif
permissionAcquireFinish ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionGetAllowedMethodInfo ,
#endif
permissionGetAllowed ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionGetCanAcquireMethodInfo ,
#endif
permissionGetCanAcquire ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionGetCanReleaseMethodInfo ,
#endif
permissionGetCanRelease ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionImplUpdateMethodInfo ,
#endif
permissionImplUpdate ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionReleaseMethodInfo ,
#endif
permissionRelease ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionReleaseAsyncMethodInfo ,
#endif
permissionReleaseAsync ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionReleaseFinishMethodInfo ,
#endif
permissionReleaseFinish ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionAllowedPropertyInfo ,
#endif
getPermissionAllowed ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
permissionAllowed ,
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionCanAcquirePropertyInfo ,
#endif
getPermissionCanAcquire ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
permissionCanAcquire ,
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
PermissionCanReleasePropertyInfo ,
#endif
getPermissionCanRelease ,
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
permissionCanRelease ,
#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.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Callbacks as Gio.Callbacks
import qualified GI.Gio.Interfaces.AsyncResult as Gio.AsyncResult
import qualified GI.Gio.Objects.Cancellable as Gio.Cancellable
newtype Permission = Permission (ManagedPtr Permission)
foreign import ccall "g_permission_get_type"
c_g_permission_get_type :: IO GType
instance GObject Permission where
gobjectType _ = c_g_permission_get_type
class GObject o => IsPermission o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError Permission a) =>
IsPermission a
#endif
instance IsPermission Permission
instance GObject.Object.IsObject Permission
toPermission :: (MonadIO m, IsPermission o) => o -> m Permission
toPermission = liftIO . unsafeCastTo Permission
noPermission :: Maybe Permission
noPermission = Nothing
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
type family ResolvePermissionMethod (t :: Symbol) (o :: *) :: * where
ResolvePermissionMethod "acquire" o = PermissionAcquireMethodInfo
ResolvePermissionMethod "acquireAsync" o = PermissionAcquireAsyncMethodInfo
ResolvePermissionMethod "acquireFinish" o = PermissionAcquireFinishMethodInfo
ResolvePermissionMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolvePermissionMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolvePermissionMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolvePermissionMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolvePermissionMethod "implUpdate" o = PermissionImplUpdateMethodInfo
ResolvePermissionMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolvePermissionMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolvePermissionMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolvePermissionMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolvePermissionMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolvePermissionMethod "release" o = PermissionReleaseMethodInfo
ResolvePermissionMethod "releaseAsync" o = PermissionReleaseAsyncMethodInfo
ResolvePermissionMethod "releaseFinish" o = PermissionReleaseFinishMethodInfo
ResolvePermissionMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolvePermissionMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
ResolvePermissionMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolvePermissionMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolvePermissionMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolvePermissionMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolvePermissionMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolvePermissionMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolvePermissionMethod "getAllowed" o = PermissionGetAllowedMethodInfo
ResolvePermissionMethod "getCanAcquire" o = PermissionGetCanAcquireMethodInfo
ResolvePermissionMethod "getCanRelease" o = PermissionGetCanReleaseMethodInfo
ResolvePermissionMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolvePermissionMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolvePermissionMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolvePermissionMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolvePermissionMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolvePermissionMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolvePermissionMethod t Permission, O.MethodInfo info Permission p) => O.IsLabelProxy t (Permission -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolvePermissionMethod t Permission, O.MethodInfo info Permission p) => O.IsLabel t (Permission -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#endif
getPermissionAllowed :: (MonadIO m, IsPermission o) => o -> m Bool
getPermissionAllowed obj = liftIO $ getObjectPropertyBool obj "allowed"
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionAllowedPropertyInfo
instance AttrInfo PermissionAllowedPropertyInfo where
type AttrAllowedOps PermissionAllowedPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint PermissionAllowedPropertyInfo = (~) ()
type AttrBaseTypeConstraint PermissionAllowedPropertyInfo = IsPermission
type AttrGetType PermissionAllowedPropertyInfo = Bool
type AttrLabel PermissionAllowedPropertyInfo = "allowed"
type AttrOrigin PermissionAllowedPropertyInfo = Permission
attrGet _ = getPermissionAllowed
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
getPermissionCanAcquire :: (MonadIO m, IsPermission o) => o -> m Bool
getPermissionCanAcquire obj = liftIO $ getObjectPropertyBool obj "can-acquire"
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionCanAcquirePropertyInfo
instance AttrInfo PermissionCanAcquirePropertyInfo where
type AttrAllowedOps PermissionCanAcquirePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint PermissionCanAcquirePropertyInfo = (~) ()
type AttrBaseTypeConstraint PermissionCanAcquirePropertyInfo = IsPermission
type AttrGetType PermissionCanAcquirePropertyInfo = Bool
type AttrLabel PermissionCanAcquirePropertyInfo = "can-acquire"
type AttrOrigin PermissionCanAcquirePropertyInfo = Permission
attrGet _ = getPermissionCanAcquire
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
getPermissionCanRelease :: (MonadIO m, IsPermission o) => o -> m Bool
getPermissionCanRelease obj = liftIO $ getObjectPropertyBool obj "can-release"
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionCanReleasePropertyInfo
instance AttrInfo PermissionCanReleasePropertyInfo where
type AttrAllowedOps PermissionCanReleasePropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint PermissionCanReleasePropertyInfo = (~) ()
type AttrBaseTypeConstraint PermissionCanReleasePropertyInfo = IsPermission
type AttrGetType PermissionCanReleasePropertyInfo = Bool
type AttrLabel PermissionCanReleasePropertyInfo = "can-release"
type AttrOrigin PermissionCanReleasePropertyInfo = Permission
attrGet _ = getPermissionCanRelease
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
instance O.HasAttributeList Permission
type instance O.AttributeList Permission = PermissionAttributeList
type PermissionAttributeList = ('[ '("allowed", PermissionAllowedPropertyInfo), '("canAcquire", PermissionCanAcquirePropertyInfo), '("canRelease", PermissionCanReleasePropertyInfo)] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
permissionAllowed :: AttrLabelProxy "allowed"
permissionAllowed = AttrLabelProxy
permissionCanAcquire :: AttrLabelProxy "canAcquire"
permissionCanAcquire = AttrLabelProxy
permissionCanRelease :: AttrLabelProxy "canRelease"
permissionCanRelease = AttrLabelProxy
#endif
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
type instance O.SignalList Permission = PermissionSignalList
type PermissionSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "g_permission_acquire" g_permission_acquire ::
Ptr Permission ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
permissionAcquire ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> m ()
permissionAcquire permission cancellable = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
maybeCancellable <- case cancellable of
Nothing -> return nullPtr
Just jCancellable -> do
jCancellable' <- unsafeManagedPtrCastPtr jCancellable
return jCancellable'
onException (do
_ <- propagateGError $ g_permission_acquire permission' maybeCancellable
touchManagedPtr permission
whenJust cancellable touchManagedPtr
return ()
) (do
return ()
)
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionAcquireMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) => O.MethodInfo PermissionAcquireMethodInfo a signature where
overloadedMethod _ = permissionAcquire
#endif
foreign import ccall "g_permission_acquire_async" g_permission_acquire_async ::
Ptr Permission ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
permissionAcquireAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
permissionAcquireAsync permission cancellable callback = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
maybeCancellable <- case cancellable of
Nothing -> return nullPtr
Just jCancellable -> do
jCancellable' <- unsafeManagedPtrCastPtr jCancellable
return jCancellable'
ptrcallback <- callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
maybeCallback <- case callback of
Nothing -> return (castPtrToFunPtr nullPtr)
Just jCallback -> do
jCallback' <- Gio.Callbacks.mk_AsyncReadyCallback (Gio.Callbacks.wrap_AsyncReadyCallback (Just ptrcallback) (Gio.Callbacks.drop_closures_AsyncReadyCallback jCallback))
poke ptrcallback jCallback'
return jCallback'
let userData = nullPtr
g_permission_acquire_async permission' maybeCancellable maybeCallback userData
touchManagedPtr permission
whenJust cancellable touchManagedPtr
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionAcquireAsyncMethodInfo
instance (signature ~ (Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) => O.MethodInfo PermissionAcquireAsyncMethodInfo a signature where
overloadedMethod _ = permissionAcquireAsync
#endif
foreign import ccall "g_permission_acquire_finish" g_permission_acquire_finish ::
Ptr Permission ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO CInt
permissionAcquireFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m ()
permissionAcquireFinish permission result_ = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
result_' <- unsafeManagedPtrCastPtr result_
onException (do
_ <- propagateGError $ g_permission_acquire_finish permission' result_'
touchManagedPtr permission
touchManagedPtr result_
return ()
) (do
return ()
)
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionAcquireFinishMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsPermission a, Gio.AsyncResult.IsAsyncResult b) => O.MethodInfo PermissionAcquireFinishMethodInfo a signature where
overloadedMethod _ = permissionAcquireFinish
#endif
foreign import ccall "g_permission_get_allowed" g_permission_get_allowed ::
Ptr Permission ->
IO CInt
permissionGetAllowed ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a) =>
a
-> m Bool
permissionGetAllowed permission = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
result <- g_permission_get_allowed permission'
let result' = (/= 0) result
touchManagedPtr permission
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionGetAllowedMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsPermission a) => O.MethodInfo PermissionGetAllowedMethodInfo a signature where
overloadedMethod _ = permissionGetAllowed
#endif
foreign import ccall "g_permission_get_can_acquire" g_permission_get_can_acquire ::
Ptr Permission ->
IO CInt
permissionGetCanAcquire ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a) =>
a
-> m Bool
permissionGetCanAcquire permission = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
result <- g_permission_get_can_acquire permission'
let result' = (/= 0) result
touchManagedPtr permission
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionGetCanAcquireMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsPermission a) => O.MethodInfo PermissionGetCanAcquireMethodInfo a signature where
overloadedMethod _ = permissionGetCanAcquire
#endif
foreign import ccall "g_permission_get_can_release" g_permission_get_can_release ::
Ptr Permission ->
IO CInt
permissionGetCanRelease ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a) =>
a
-> m Bool
permissionGetCanRelease permission = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
result <- g_permission_get_can_release permission'
let result' = (/= 0) result
touchManagedPtr permission
return result'
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionGetCanReleaseMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsPermission a) => O.MethodInfo PermissionGetCanReleaseMethodInfo a signature where
overloadedMethod _ = permissionGetCanRelease
#endif
foreign import ccall "g_permission_impl_update" g_permission_impl_update ::
Ptr Permission ->
CInt ->
CInt ->
CInt ->
IO ()
permissionImplUpdate ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a) =>
a
-> Bool
-> Bool
-> Bool
-> m ()
permissionImplUpdate permission allowed canAcquire canRelease = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
let allowed' = (fromIntegral . fromEnum) allowed
let canAcquire' = (fromIntegral . fromEnum) canAcquire
let canRelease' = (fromIntegral . fromEnum) canRelease
g_permission_impl_update permission' allowed' canAcquire' canRelease'
touchManagedPtr permission
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionImplUpdateMethodInfo
instance (signature ~ (Bool -> Bool -> Bool -> m ()), MonadIO m, IsPermission a) => O.MethodInfo PermissionImplUpdateMethodInfo a signature where
overloadedMethod _ = permissionImplUpdate
#endif
foreign import ccall "g_permission_release" g_permission_release ::
Ptr Permission ->
Ptr Gio.Cancellable.Cancellable ->
Ptr (Ptr GError) ->
IO CInt
permissionRelease ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> m ()
permissionRelease permission cancellable = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
maybeCancellable <- case cancellable of
Nothing -> return nullPtr
Just jCancellable -> do
jCancellable' <- unsafeManagedPtrCastPtr jCancellable
return jCancellable'
onException (do
_ <- propagateGError $ g_permission_release permission' maybeCancellable
touchManagedPtr permission
whenJust cancellable touchManagedPtr
return ()
) (do
return ()
)
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionReleaseMethodInfo
instance (signature ~ (Maybe (b) -> m ()), MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) => O.MethodInfo PermissionReleaseMethodInfo a signature where
overloadedMethod _ = permissionRelease
#endif
foreign import ccall "g_permission_release_async" g_permission_release_async ::
Ptr Permission ->
Ptr Gio.Cancellable.Cancellable ->
FunPtr Gio.Callbacks.C_AsyncReadyCallback ->
Ptr () ->
IO ()
permissionReleaseAsync ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) =>
a
-> Maybe (b)
-> Maybe (Gio.Callbacks.AsyncReadyCallback)
-> m ()
permissionReleaseAsync permission cancellable callback = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
maybeCancellable <- case cancellable of
Nothing -> return nullPtr
Just jCancellable -> do
jCancellable' <- unsafeManagedPtrCastPtr jCancellable
return jCancellable'
ptrcallback <- callocMem :: IO (Ptr (FunPtr Gio.Callbacks.C_AsyncReadyCallback))
maybeCallback <- case callback of
Nothing -> return (castPtrToFunPtr nullPtr)
Just jCallback -> do
jCallback' <- Gio.Callbacks.mk_AsyncReadyCallback (Gio.Callbacks.wrap_AsyncReadyCallback (Just ptrcallback) (Gio.Callbacks.drop_closures_AsyncReadyCallback jCallback))
poke ptrcallback jCallback'
return jCallback'
let userData = nullPtr
g_permission_release_async permission' maybeCancellable maybeCallback userData
touchManagedPtr permission
whenJust cancellable touchManagedPtr
return ()
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionReleaseAsyncMethodInfo
instance (signature ~ (Maybe (b) -> Maybe (Gio.Callbacks.AsyncReadyCallback) -> m ()), MonadIO m, IsPermission a, Gio.Cancellable.IsCancellable b) => O.MethodInfo PermissionReleaseAsyncMethodInfo a signature where
overloadedMethod _ = permissionReleaseAsync
#endif
foreign import ccall "g_permission_release_finish" g_permission_release_finish ::
Ptr Permission ->
Ptr Gio.AsyncResult.AsyncResult ->
Ptr (Ptr GError) ->
IO CInt
permissionReleaseFinish ::
(B.CallStack.HasCallStack, MonadIO m, IsPermission a, Gio.AsyncResult.IsAsyncResult b) =>
a
-> b
-> m ()
permissionReleaseFinish permission result_ = liftIO $ do
permission' <- unsafeManagedPtrCastPtr permission
result_' <- unsafeManagedPtrCastPtr result_
onException (do
_ <- propagateGError $ g_permission_release_finish permission' result_'
touchManagedPtr permission
touchManagedPtr result_
return ()
) (do
return ()
)
#if defined(ENABLE_OVERLOADING) && !defined(__HADDOCK_VERSION__)
data PermissionReleaseFinishMethodInfo
instance (signature ~ (b -> m ()), MonadIO m, IsPermission a, Gio.AsyncResult.IsAsyncResult b) => O.MethodInfo PermissionReleaseFinishMethodInfo a signature where
overloadedMethod _ = permissionReleaseFinish
#endif