{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.Gio.Structs.UnixMountEntry
(
UnixMountEntry(..) ,
#if defined(ENABLE_OVERLOADING)
ResolveUnixMountEntryMethod ,
#endif
unixMountEntryAt ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryCompareMethodInfo ,
#endif
unixMountEntryCompare ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryCopyMethodInfo ,
#endif
unixMountEntryCopy ,
unixMountEntryFor ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryFreeMethodInfo ,
#endif
unixMountEntryFree ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGetDevicePathMethodInfo ,
#endif
unixMountEntryGetDevicePath ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGetFsTypeMethodInfo ,
#endif
unixMountEntryGetFsType ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGetMountPathMethodInfo ,
#endif
unixMountEntryGetMountPath ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGetOptionsMethodInfo ,
#endif
unixMountEntryGetOptions ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGetRootPathMethodInfo ,
#endif
unixMountEntryGetRootPath ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGuessCanEjectMethodInfo ,
#endif
unixMountEntryGuessCanEject ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGuessIconMethodInfo ,
#endif
unixMountEntryGuessIcon ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGuessNameMethodInfo ,
#endif
unixMountEntryGuessName ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGuessShouldDisplayMethodInfo,
#endif
unixMountEntryGuessShouldDisplay ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryGuessSymbolicIconMethodInfo,
#endif
unixMountEntryGuessSymbolicIcon ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryIsReadonlyMethodInfo ,
#endif
unixMountEntryIsReadonly ,
#if defined(ENABLE_OVERLOADING)
UnixMountEntryIsSystemInternalMethodInfo,
#endif
unixMountEntryIsSystemInternal ,
) 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.Kind as DK
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 Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT
#if MIN_VERSION_base(4,18,0)
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.Gio.Interfaces.Icon as Gio.Icon
#else
import {-# SOURCE #-} qualified GI.Gio.Interfaces.Icon as Gio.Icon
#endif
newtype UnixMountEntry = UnixMountEntry (SP.ManagedPtr UnixMountEntry)
deriving (UnixMountEntry -> UnixMountEntry -> Bool
(UnixMountEntry -> UnixMountEntry -> Bool)
-> (UnixMountEntry -> UnixMountEntry -> Bool) -> Eq UnixMountEntry
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: UnixMountEntry -> UnixMountEntry -> Bool
== :: UnixMountEntry -> UnixMountEntry -> Bool
$c/= :: UnixMountEntry -> UnixMountEntry -> Bool
/= :: UnixMountEntry -> UnixMountEntry -> Bool
Eq)
instance SP.ManagedPtrNewtype UnixMountEntry where
toManagedPtr :: UnixMountEntry -> ManagedPtr UnixMountEntry
toManagedPtr (UnixMountEntry ManagedPtr UnixMountEntry
p) = ManagedPtr UnixMountEntry
p
foreign import ccall "g_unix_mount_entry_get_type" c_g_unix_mount_entry_get_type ::
IO GType
type instance O.ParentTypes UnixMountEntry = '[]
instance O.HasParentTypes UnixMountEntry
instance B.Types.TypedObject UnixMountEntry where
glibType :: IO GType
glibType = IO GType
c_g_unix_mount_entry_get_type
instance B.Types.GBoxed UnixMountEntry
instance B.GValue.IsGValue (Maybe UnixMountEntry) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_g_unix_mount_entry_get_type
gvalueSet_ :: Ptr GValue -> Maybe UnixMountEntry -> IO ()
gvalueSet_ Ptr GValue
gv Maybe UnixMountEntry
P.Nothing = Ptr GValue -> Ptr UnixMountEntry -> IO ()
forall a. Ptr GValue -> Ptr a -> IO ()
B.GValue.set_boxed Ptr GValue
gv (Ptr UnixMountEntry
forall a. Ptr a
FP.nullPtr :: FP.Ptr UnixMountEntry)
gvalueSet_ Ptr GValue
gv (P.Just UnixMountEntry
obj) = UnixMountEntry -> (Ptr UnixMountEntry -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr UnixMountEntry
obj (Ptr GValue -> Ptr UnixMountEntry -> IO ()
forall a. Ptr GValue -> Ptr a -> IO ()
B.GValue.set_boxed Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe UnixMountEntry)
gvalueGet_ Ptr GValue
gv = do
Ptr UnixMountEntry
ptr <- Ptr GValue -> IO (Ptr UnixMountEntry)
forall b. Ptr GValue -> IO (Ptr b)
B.GValue.get_boxed Ptr GValue
gv :: IO (Ptr UnixMountEntry)
if Ptr UnixMountEntry
ptr Ptr UnixMountEntry -> Ptr UnixMountEntry -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr UnixMountEntry
forall a. Ptr a
FP.nullPtr
then UnixMountEntry -> Maybe UnixMountEntry
forall a. a -> Maybe a
P.Just (UnixMountEntry -> Maybe UnixMountEntry)
-> IO UnixMountEntry -> IO (Maybe UnixMountEntry)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr UnixMountEntry -> UnixMountEntry)
-> Ptr UnixMountEntry -> IO UnixMountEntry
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
B.ManagedPtr.newBoxed ManagedPtr UnixMountEntry -> UnixMountEntry
UnixMountEntry Ptr UnixMountEntry
ptr
else Maybe UnixMountEntry -> IO (Maybe UnixMountEntry)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe UnixMountEntry
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList UnixMountEntry
type instance O.AttributeList UnixMountEntry = UnixMountEntryAttributeList
type UnixMountEntryAttributeList = ('[ ] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "g_unix_mount_entry_compare" g_unix_mount_entry_compare ::
Ptr UnixMountEntry ->
Ptr UnixMountEntry ->
IO Int32
unixMountEntryCompare ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> UnixMountEntry
-> m Int32
unixMountEntryCompare :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> UnixMountEntry -> m Int32
unixMountEntryCompare UnixMountEntry
mount1 UnixMountEntry
mount2 = IO Int32 -> m Int32
forall a. IO a -> m a
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 UnixMountEntry
mount1' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mount1
Ptr UnixMountEntry
mount2' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mount2
Int32
result <- Ptr UnixMountEntry -> Ptr UnixMountEntry -> IO Int32
g_unix_mount_entry_compare Ptr UnixMountEntry
mount1' Ptr UnixMountEntry
mount2'
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mount1
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mount2
Int32 -> IO Int32
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Int32
result
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryCompareMethodInfo
instance (signature ~ (UnixMountEntry -> m Int32), MonadIO m) => O.OverloadedMethod UnixMountEntryCompareMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryCompare
instance O.OverloadedMethodInfo UnixMountEntryCompareMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryCompare",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryCompare"
})
#endif
foreign import ccall "g_unix_mount_entry_copy" g_unix_mount_entry_copy ::
Ptr UnixMountEntry ->
IO (Ptr UnixMountEntry)
unixMountEntryCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m UnixMountEntry
unixMountEntryCopy :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m UnixMountEntry
unixMountEntryCopy UnixMountEntry
mountEntry = IO UnixMountEntry -> m UnixMountEntry
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO UnixMountEntry -> m UnixMountEntry)
-> IO UnixMountEntry -> m UnixMountEntry
forall a b. (a -> b) -> a -> b
$ do
Ptr UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
Ptr UnixMountEntry
result <- Ptr UnixMountEntry -> IO (Ptr UnixMountEntry)
g_unix_mount_entry_copy Ptr UnixMountEntry
mountEntry'
Text -> Ptr UnixMountEntry -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryCopy" Ptr UnixMountEntry
result
UnixMountEntry
result' <- ((ManagedPtr UnixMountEntry -> UnixMountEntry)
-> Ptr UnixMountEntry -> IO UnixMountEntry
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr UnixMountEntry -> UnixMountEntry
UnixMountEntry) Ptr UnixMountEntry
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
UnixMountEntry -> IO UnixMountEntry
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return UnixMountEntry
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryCopyMethodInfo
instance (signature ~ (m UnixMountEntry), MonadIO m) => O.OverloadedMethod UnixMountEntryCopyMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryCopy
instance O.OverloadedMethodInfo UnixMountEntryCopyMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryCopy",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryCopy"
})
#endif
foreign import ccall "g_unix_mount_entry_free" g_unix_mount_entry_free ::
Ptr UnixMountEntry ->
IO ()
unixMountEntryFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m ()
unixMountEntryFree :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m ()
unixMountEntryFree UnixMountEntry
mountEntry = 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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
Ptr UnixMountEntry -> IO ()
g_unix_mount_entry_free Ptr UnixMountEntry
mountEntry'
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
() -> IO ()
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.OverloadedMethod UnixMountEntryFreeMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryFree
instance O.OverloadedMethodInfo UnixMountEntryFreeMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryFree",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryFree"
})
#endif
foreign import ccall "g_unix_mount_entry_get_device_path" g_unix_mount_entry_get_device_path ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGetDevicePath ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m [Char]
unixMountEntryGetDevicePath :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m [Char]
unixMountEntryGetDevicePath UnixMountEntry
mountEntry = IO [Char] -> m [Char]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Char] -> m [Char]) -> IO [Char] -> m [Char]
forall a b. (a -> b) -> a -> b
$ do
Ptr UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_get_device_path Ptr UnixMountEntry
mountEntry'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGetDevicePath" CString
result
[Char]
result' <- HasCallStack => CString -> IO [Char]
CString -> IO [Char]
cstringToString CString
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
[Char] -> IO [Char]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [Char]
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGetDevicePathMethodInfo
instance (signature ~ (m [Char]), MonadIO m) => O.OverloadedMethod UnixMountEntryGetDevicePathMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGetDevicePath
instance O.OverloadedMethodInfo UnixMountEntryGetDevicePathMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGetDevicePath",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGetDevicePath"
})
#endif
foreign import ccall "g_unix_mount_entry_get_fs_type" g_unix_mount_entry_get_fs_type ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGetFsType ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m T.Text
unixMountEntryGetFsType :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Text
unixMountEntryGetFsType UnixMountEntry
mountEntry = 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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_get_fs_type Ptr UnixMountEntry
mountEntry'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGetFsType" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGetFsTypeMethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.OverloadedMethod UnixMountEntryGetFsTypeMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGetFsType
instance O.OverloadedMethodInfo UnixMountEntryGetFsTypeMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGetFsType",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGetFsType"
})
#endif
foreign import ccall "g_unix_mount_entry_get_mount_path" g_unix_mount_entry_get_mount_path ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGetMountPath ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m [Char]
unixMountEntryGetMountPath :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m [Char]
unixMountEntryGetMountPath UnixMountEntry
mountEntry = IO [Char] -> m [Char]
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO [Char] -> m [Char]) -> IO [Char] -> m [Char]
forall a b. (a -> b) -> a -> b
$ do
Ptr UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_get_mount_path Ptr UnixMountEntry
mountEntry'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGetMountPath" CString
result
[Char]
result' <- HasCallStack => CString -> IO [Char]
CString -> IO [Char]
cstringToString CString
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
[Char] -> IO [Char]
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return [Char]
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGetMountPathMethodInfo
instance (signature ~ (m [Char]), MonadIO m) => O.OverloadedMethod UnixMountEntryGetMountPathMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGetMountPath
instance O.OverloadedMethodInfo UnixMountEntryGetMountPathMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGetMountPath",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGetMountPath"
})
#endif
foreign import ccall "g_unix_mount_entry_get_options" g_unix_mount_entry_get_options ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGetOptions ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m (Maybe T.Text)
unixMountEntryGetOptions :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m (Maybe Text)
unixMountEntryGetOptions UnixMountEntry
mountEntry = 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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_get_options Ptr UnixMountEntry
mountEntry'
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''
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
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 UnixMountEntryGetOptionsMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m) => O.OverloadedMethod UnixMountEntryGetOptionsMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGetOptions
instance O.OverloadedMethodInfo UnixMountEntryGetOptionsMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGetOptions",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGetOptions"
})
#endif
foreign import ccall "g_unix_mount_entry_get_root_path" g_unix_mount_entry_get_root_path ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGetRootPath ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m (Maybe T.Text)
unixMountEntryGetRootPath :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m (Maybe Text)
unixMountEntryGetRootPath UnixMountEntry
mountEntry = 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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_get_root_path Ptr UnixMountEntry
mountEntry'
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''
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
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 UnixMountEntryGetRootPathMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m) => O.OverloadedMethod UnixMountEntryGetRootPathMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGetRootPath
instance O.OverloadedMethodInfo UnixMountEntryGetRootPathMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGetRootPath",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGetRootPath"
})
#endif
foreign import ccall "g_unix_mount_entry_guess_can_eject" g_unix_mount_entry_guess_can_eject ::
Ptr UnixMountEntry ->
IO CInt
unixMountEntryGuessCanEject ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Bool
unixMountEntryGuessCanEject :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Bool
unixMountEntryGuessCanEject UnixMountEntry
mountEntry = IO Bool -> m Bool
forall a. IO a -> m a
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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CInt
result <- Ptr UnixMountEntry -> IO CInt
g_unix_mount_entry_guess_can_eject Ptr UnixMountEntry
mountEntry'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGuessCanEjectMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.OverloadedMethod UnixMountEntryGuessCanEjectMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGuessCanEject
instance O.OverloadedMethodInfo UnixMountEntryGuessCanEjectMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGuessCanEject",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGuessCanEject"
})
#endif
foreign import ccall "g_unix_mount_entry_guess_icon" g_unix_mount_entry_guess_icon ::
Ptr UnixMountEntry ->
IO (Ptr Gio.Icon.Icon)
unixMountEntryGuessIcon ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Gio.Icon.Icon
unixMountEntryGuessIcon :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Icon
unixMountEntryGuessIcon UnixMountEntry
mountEntry = IO Icon -> m Icon
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Icon -> m Icon) -> IO Icon -> m Icon
forall a b. (a -> b) -> a -> b
$ do
Ptr UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
Ptr Icon
result <- Ptr UnixMountEntry -> IO (Ptr Icon)
g_unix_mount_entry_guess_icon Ptr UnixMountEntry
mountEntry'
Text -> Ptr Icon -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGuessIcon" Ptr Icon
result
Icon
result' <- ((ManagedPtr Icon -> Icon) -> Ptr Icon -> IO Icon
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr Icon -> Icon
Gio.Icon.Icon) Ptr Icon
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Icon -> IO Icon
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Icon
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGuessIconMethodInfo
instance (signature ~ (m Gio.Icon.Icon), MonadIO m) => O.OverloadedMethod UnixMountEntryGuessIconMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGuessIcon
instance O.OverloadedMethodInfo UnixMountEntryGuessIconMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGuessIcon",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGuessIcon"
})
#endif
foreign import ccall "g_unix_mount_entry_guess_name" g_unix_mount_entry_guess_name ::
Ptr UnixMountEntry ->
IO CString
unixMountEntryGuessName ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m T.Text
unixMountEntryGuessName :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Text
unixMountEntryGuessName UnixMountEntry
mountEntry = 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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CString
result <- Ptr UnixMountEntry -> IO CString
g_unix_mount_entry_guess_name Ptr UnixMountEntry
mountEntry'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGuessName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGuessNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m) => O.OverloadedMethod UnixMountEntryGuessNameMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGuessName
instance O.OverloadedMethodInfo UnixMountEntryGuessNameMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGuessName",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGuessName"
})
#endif
foreign import ccall "g_unix_mount_entry_guess_should_display" g_unix_mount_entry_guess_should_display ::
Ptr UnixMountEntry ->
IO CInt
unixMountEntryGuessShouldDisplay ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Bool
unixMountEntryGuessShouldDisplay :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Bool
unixMountEntryGuessShouldDisplay UnixMountEntry
mountEntry = IO Bool -> m Bool
forall a. IO a -> m a
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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CInt
result <- Ptr UnixMountEntry -> IO CInt
g_unix_mount_entry_guess_should_display Ptr UnixMountEntry
mountEntry'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGuessShouldDisplayMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.OverloadedMethod UnixMountEntryGuessShouldDisplayMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGuessShouldDisplay
instance O.OverloadedMethodInfo UnixMountEntryGuessShouldDisplayMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGuessShouldDisplay",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGuessShouldDisplay"
})
#endif
foreign import ccall "g_unix_mount_entry_guess_symbolic_icon" g_unix_mount_entry_guess_symbolic_icon ::
Ptr UnixMountEntry ->
IO (Ptr Gio.Icon.Icon)
unixMountEntryGuessSymbolicIcon ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Gio.Icon.Icon
unixMountEntryGuessSymbolicIcon :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Icon
unixMountEntryGuessSymbolicIcon UnixMountEntry
mountEntry = IO Icon -> m Icon
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Icon -> m Icon) -> IO Icon -> m Icon
forall a b. (a -> b) -> a -> b
$ do
Ptr UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
Ptr Icon
result <- Ptr UnixMountEntry -> IO (Ptr Icon)
g_unix_mount_entry_guess_symbolic_icon Ptr UnixMountEntry
mountEntry'
Text -> Ptr Icon -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"unixMountEntryGuessSymbolicIcon" Ptr Icon
result
Icon
result' <- ((ManagedPtr Icon -> Icon) -> Ptr Icon -> IO Icon
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr Icon -> Icon
Gio.Icon.Icon) Ptr Icon
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Icon -> IO Icon
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Icon
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryGuessSymbolicIconMethodInfo
instance (signature ~ (m Gio.Icon.Icon), MonadIO m) => O.OverloadedMethod UnixMountEntryGuessSymbolicIconMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryGuessSymbolicIcon
instance O.OverloadedMethodInfo UnixMountEntryGuessSymbolicIconMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryGuessSymbolicIcon",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryGuessSymbolicIcon"
})
#endif
foreign import ccall "g_unix_mount_entry_is_readonly" g_unix_mount_entry_is_readonly ::
Ptr UnixMountEntry ->
IO CInt
unixMountEntryIsReadonly ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Bool
unixMountEntryIsReadonly :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Bool
unixMountEntryIsReadonly UnixMountEntry
mountEntry = IO Bool -> m Bool
forall a. IO a -> m a
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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CInt
result <- Ptr UnixMountEntry -> IO CInt
g_unix_mount_entry_is_readonly Ptr UnixMountEntry
mountEntry'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryIsReadonlyMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.OverloadedMethod UnixMountEntryIsReadonlyMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryIsReadonly
instance O.OverloadedMethodInfo UnixMountEntryIsReadonlyMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryIsReadonly",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryIsReadonly"
})
#endif
foreign import ccall "g_unix_mount_entry_is_system_internal" g_unix_mount_entry_is_system_internal ::
Ptr UnixMountEntry ->
IO CInt
unixMountEntryIsSystemInternal ::
(B.CallStack.HasCallStack, MonadIO m) =>
UnixMountEntry
-> m Bool
unixMountEntryIsSystemInternal :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
UnixMountEntry -> m Bool
unixMountEntryIsSystemInternal UnixMountEntry
mountEntry = IO Bool -> m Bool
forall a. IO a -> m a
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 UnixMountEntry
mountEntry' <- UnixMountEntry -> IO (Ptr UnixMountEntry)
forall a. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr a)
unsafeManagedPtrGetPtr UnixMountEntry
mountEntry
CInt
result <- Ptr UnixMountEntry -> IO CInt
g_unix_mount_entry_is_system_internal Ptr UnixMountEntry
mountEntry'
let result' :: Bool
result' = (CInt -> CInt -> Bool
forall a. Eq a => a -> a -> Bool
/= CInt
0) CInt
result
UnixMountEntry -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr UnixMountEntry
mountEntry
Bool -> IO Bool
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Bool
result'
#if defined(ENABLE_OVERLOADING)
data UnixMountEntryIsSystemInternalMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.OverloadedMethod UnixMountEntryIsSystemInternalMethodInfo UnixMountEntry signature where
overloadedMethod = unixMountEntryIsSystemInternal
instance O.OverloadedMethodInfo UnixMountEntryIsSystemInternalMethodInfo UnixMountEntry where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.Gio.Structs.UnixMountEntry.unixMountEntryIsSystemInternal",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-gio-2.0.34/docs/GI-Gio-Structs-UnixMountEntry.html#v:unixMountEntryIsSystemInternal"
})
#endif
foreign import ccall "g_unix_mount_entry_at" g_unix_mount_entry_at ::
CString ->
Ptr Word64 ->
IO (Ptr UnixMountEntry)
unixMountEntryAt ::
(B.CallStack.HasCallStack, MonadIO m) =>
[Char]
-> m ((Maybe UnixMountEntry, Word64))
unixMountEntryAt :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
[Char] -> m (Maybe UnixMountEntry, Word64)
unixMountEntryAt [Char]
mountPath = IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64))
-> IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64)
forall a b. (a -> b) -> a -> b
$ do
CString
mountPath' <- [Char] -> IO CString
stringToCString [Char]
mountPath
Ptr Word64
timeRead <- IO (Ptr Word64)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Word64)
Ptr UnixMountEntry
result <- CString -> Ptr Word64 -> IO (Ptr UnixMountEntry)
g_unix_mount_entry_at CString
mountPath' Ptr Word64
timeRead
Maybe UnixMountEntry
maybeResult <- Ptr UnixMountEntry
-> (Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr UnixMountEntry
result ((Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry))
-> (Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry)
forall a b. (a -> b) -> a -> b
$ \Ptr UnixMountEntry
result' -> do
UnixMountEntry
result'' <- ((ManagedPtr UnixMountEntry -> UnixMountEntry)
-> Ptr UnixMountEntry -> IO UnixMountEntry
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr UnixMountEntry -> UnixMountEntry
UnixMountEntry) Ptr UnixMountEntry
result'
UnixMountEntry -> IO UnixMountEntry
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return UnixMountEntry
result''
Word64
timeRead' <- Ptr Word64 -> IO Word64
forall a. Storable a => Ptr a -> IO a
peek Ptr Word64
timeRead
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
mountPath'
Ptr Word64 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Word64
timeRead
(Maybe UnixMountEntry, Word64) -> IO (Maybe UnixMountEntry, Word64)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Maybe UnixMountEntry
maybeResult, Word64
timeRead')
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "g_unix_mount_entry_for" g_unix_mount_entry_for ::
CString ->
Ptr Word64 ->
IO (Ptr UnixMountEntry)
unixMountEntryFor ::
(B.CallStack.HasCallStack, MonadIO m) =>
[Char]
-> m ((Maybe UnixMountEntry, Word64))
unixMountEntryFor :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
[Char] -> m (Maybe UnixMountEntry, Word64)
unixMountEntryFor [Char]
filePath = IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64)
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64))
-> IO (Maybe UnixMountEntry, Word64)
-> m (Maybe UnixMountEntry, Word64)
forall a b. (a -> b) -> a -> b
$ do
CString
filePath' <- [Char] -> IO CString
stringToCString [Char]
filePath
Ptr Word64
timeRead <- IO (Ptr Word64)
forall a. Storable a => IO (Ptr a)
allocMem :: IO (Ptr Word64)
Ptr UnixMountEntry
result <- CString -> Ptr Word64 -> IO (Ptr UnixMountEntry)
g_unix_mount_entry_for CString
filePath' Ptr Word64
timeRead
Maybe UnixMountEntry
maybeResult <- Ptr UnixMountEntry
-> (Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry)
forall a b. Ptr a -> (Ptr a -> IO b) -> IO (Maybe b)
convertIfNonNull Ptr UnixMountEntry
result ((Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry))
-> (Ptr UnixMountEntry -> IO UnixMountEntry)
-> IO (Maybe UnixMountEntry)
forall a b. (a -> b) -> a -> b
$ \Ptr UnixMountEntry
result' -> do
UnixMountEntry
result'' <- ((ManagedPtr UnixMountEntry -> UnixMountEntry)
-> Ptr UnixMountEntry -> IO UnixMountEntry
forall a.
(HasCallStack, GBoxed a) =>
(ManagedPtr a -> a) -> Ptr a -> IO a
wrapBoxed ManagedPtr UnixMountEntry -> UnixMountEntry
UnixMountEntry) Ptr UnixMountEntry
result'
UnixMountEntry -> IO UnixMountEntry
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return UnixMountEntry
result''
Word64
timeRead' <- Ptr Word64 -> IO Word64
forall a. Storable a => Ptr a -> IO a
peek Ptr Word64
timeRead
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
filePath'
Ptr Word64 -> IO ()
forall a. Ptr a -> IO ()
freeMem Ptr Word64
timeRead
(Maybe UnixMountEntry, Word64) -> IO (Maybe UnixMountEntry, Word64)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Maybe UnixMountEntry
maybeResult, Word64
timeRead')
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolveUnixMountEntryMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveUnixMountEntryMethod "compare" o = UnixMountEntryCompareMethodInfo
ResolveUnixMountEntryMethod "copy" o = UnixMountEntryCopyMethodInfo
ResolveUnixMountEntryMethod "free" o = UnixMountEntryFreeMethodInfo
ResolveUnixMountEntryMethod "guessCanEject" o = UnixMountEntryGuessCanEjectMethodInfo
ResolveUnixMountEntryMethod "guessIcon" o = UnixMountEntryGuessIconMethodInfo
ResolveUnixMountEntryMethod "guessName" o = UnixMountEntryGuessNameMethodInfo
ResolveUnixMountEntryMethod "guessShouldDisplay" o = UnixMountEntryGuessShouldDisplayMethodInfo
ResolveUnixMountEntryMethod "guessSymbolicIcon" o = UnixMountEntryGuessSymbolicIconMethodInfo
ResolveUnixMountEntryMethod "isReadonly" o = UnixMountEntryIsReadonlyMethodInfo
ResolveUnixMountEntryMethod "isSystemInternal" o = UnixMountEntryIsSystemInternalMethodInfo
ResolveUnixMountEntryMethod "getDevicePath" o = UnixMountEntryGetDevicePathMethodInfo
ResolveUnixMountEntryMethod "getFsType" o = UnixMountEntryGetFsTypeMethodInfo
ResolveUnixMountEntryMethod "getMountPath" o = UnixMountEntryGetMountPathMethodInfo
ResolveUnixMountEntryMethod "getOptions" o = UnixMountEntryGetOptionsMethodInfo
ResolveUnixMountEntryMethod "getRootPath" o = UnixMountEntryGetRootPathMethodInfo
ResolveUnixMountEntryMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveUnixMountEntryMethod t UnixMountEntry, O.OverloadedMethod info UnixMountEntry p) => OL.IsLabel t (UnixMountEntry -> 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 ~ ResolveUnixMountEntryMethod t UnixMountEntry, O.OverloadedMethod info UnixMountEntry p, R.HasField t UnixMountEntry p) => R.HasField t UnixMountEntry p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveUnixMountEntryMethod t UnixMountEntry, O.OverloadedMethodInfo info UnixMountEntry) => OL.IsLabel t (O.MethodProxy info UnixMountEntry) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif