{-# LINE 2 "./System/GIO/File/FileInfo.chs" #-}
module System.GIO.File.FileInfo (
FileInfo(..),
FileInfoClass,
FileAttributeStatus (..),
fileInfoNew,
fileInfoDup,
fileInfoCopyInto,
fileInfoHasAttribute,
fileInfoHasNamespace,
fileInfoListAttributes,
fileInfoGetAttributeType,
fileInfoRemoveAttribute,
fileInfoGetAttributeAsString,
fileInfoGetAttributeStatus,
fileInfoGetAttributeString,
fileInfoGetAttributeStringList,
fileInfoGetAttributeByteString,
fileInfoGetAttributeBool,
fileInfoGetAttributeWord32,
fileInfoGetAttributeInt32,
fileInfoGetAttributeWord64,
fileInfoGetAttributeInt64,
fileInfoGetAttributeObject,
fileInfoSetAttributeStatus,
fileInfoSetAttributeString,
fileInfoSetAttributeStringList,
fileInfoSetAttributeByteString,
fileInfoSetAttributeBool,
fileInfoSetAttributeWord32,
fileInfoSetAttributeInt32,
fileInfoSetAttributeWord64,
fileInfoSetAttributeInt64,
fileInfoSetAttributeObject,
fileInfoClearStatus,
fileInfoGetFileType,
fileInfoGetIsHidden,
fileInfoGetIsBackup,
fileInfoGetIsSymlink,
fileInfoGetName,
fileInfoGetDisplayName,
fileInfoGetEditName,
fileInfoGetIcon,
fileInfoGetContentType,
fileInfoGetModificationTime,
fileInfoGetSize,
fileInfoGetSymlinkTarget,
fileInfoGetEtag,
fileInfoGetSortOrder,
fileInfoUnsetAttributeMask,
fileInfoSetFileType,
fileInfoSetIsHidden,
fileInfoSetIsSymlink,
fileInfoSetName,
fileInfoSetDisplayName,
fileInfoSetEditName,
fileInfoSetIcon,
fileInfoSetContentType,
fileInfoSetModificationTime,
fileInfoSetSize,
fileInfoSetSortOrder,
) where
import Control.Monad
import Data.ByteString (ByteString)
import Data.ByteString (useAsCString)
import Data.ByteString.Unsafe (unsafePackCStringFinalizer)
import System.Glib.FFI
import System.Glib.Flags
import System.Glib.GError
import System.Glib.UTFString
import System.Glib.GObject
import System.Glib.GDateTime
import System.GIO.Enums
import System.GIO.File.FileAttribute
import System.GIO.Types
{-# LINE 147 "./System/GIO/File/FileInfo.chs" #-}
{-# LINE 149 "./System/GIO/File/FileInfo.chs" #-}
fileInfoNew :: IO FileInfo
fileInfoNew :: IO FileInfo
fileInfoNew =
(ForeignPtr FileInfo -> FileInfo, FinalizerPtr FileInfo)
-> IO (Ptr FileInfo) -> IO FileInfo
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
wrapNewGObject (ForeignPtr FileInfo -> FileInfo, FinalizerPtr FileInfo)
forall {a}. (ForeignPtr FileInfo -> FileInfo, FinalizerPtr a)
mkFileInfo (IO (Ptr FileInfo) -> IO FileInfo)
-> IO (Ptr FileInfo) -> IO FileInfo
forall a b. (a -> b) -> a -> b
$
IO (Ptr FileInfo)
g_file_info_new
{-# LINE 155 "./System/GIO/File/FileInfo.chs" #-}
fileInfoDup :: FileInfoClass info => info -> IO FileInfo
fileInfoDup :: forall info. FileInfoClass info => info -> IO FileInfo
fileInfoDup info
info =
(ForeignPtr FileInfo -> FileInfo, FinalizerPtr FileInfo)
-> IO (Ptr FileInfo) -> IO FileInfo
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
wrapNewGObject (ForeignPtr FileInfo -> FileInfo, FinalizerPtr FileInfo)
forall {a}. (ForeignPtr FileInfo -> FileInfo, FinalizerPtr a)
mkFileInfo (IO (Ptr FileInfo) -> IO FileInfo)
-> IO (Ptr FileInfo) -> IO FileInfo
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo
-> (Ptr FileInfo -> IO (Ptr FileInfo)) -> IO (Ptr FileInfo)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO (Ptr FileInfo)) -> IO (Ptr FileInfo))
-> (Ptr FileInfo -> IO (Ptr FileInfo)) -> IO (Ptr FileInfo)
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO (Ptr FileInfo)
g_file_info_dup Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoCopyInto :: (FileInfoClass srcInfo, FileInfoClass destInfo)
=> srcInfo
-> destInfo
-> IO ()
fileInfoCopyInto :: forall srcInfo destInfo.
(FileInfoClass srcInfo, FileInfoClass destInfo) =>
srcInfo -> destInfo -> IO ()
fileInfoCopyInto srcInfo
srcInfo destInfo
destInfo =
(\(FileInfo ForeignPtr FileInfo
arg1) (FileInfo ForeignPtr FileInfo
arg2) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg2 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr2 ->Ptr FileInfo -> Ptr FileInfo -> IO ()
g_file_info_copy_into Ptr FileInfo
argPtr1 Ptr FileInfo
argPtr2) (srcInfo -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo srcInfo
srcInfo) (destInfo -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo destInfo
destInfo)
fileInfoHasAttribute :: (FileInfoClass info, GlibString string) => info
-> string
-> Bool
fileInfoHasAttribute :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Bool
fileInfoHasAttribute info
info string
attribute =
CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (CInt -> Bool) -> CInt -> Bool
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_has_attribute Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoHasNamespace :: (FileInfoClass info, GlibString string) => info
-> string
-> Bool
fileInfoHasNamespace :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Bool
fileInfoHasNamespace info
info string
namespace =
CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (CInt -> Bool) -> CInt -> Bool
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
namespace ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
namespacePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_has_namespace Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
namespacePtr
fileInfoListAttributes :: (FileInfoClass info, GlibString string) => info
-> string
-> IO [string]
fileInfoListAttributes :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO [string]
fileInfoListAttributes info
info string
nameSpace =
string -> (CString -> IO [string]) -> IO [string]
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
nameSpace ((CString -> IO [string]) -> IO [string])
-> (CString -> IO [string]) -> IO [string]
forall a b. (a -> b) -> a -> b
$ \ CString
nameSpacePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo
-> (Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString))
-> (Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString)
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO (Ptr CString)
g_file_info_list_attributes Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
nameSpacePtr
IO (Ptr CString) -> (Ptr CString -> IO [string]) -> IO [string]
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CString -> IO [string]
forall s. GlibString s => Ptr CString -> IO [s]
readUTFStringArray0
fileInfoGetAttributeType :: (FileInfoClass info, GlibString string) => info
-> string
-> IO FileAttributeType
fileInfoGetAttributeType :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO FileAttributeType
fileInfoGetAttributeType info
info string
attribute =
(CInt -> FileAttributeType) -> IO CInt -> IO FileAttributeType
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM (Int -> FileAttributeType
forall a. Enum a => Int -> a
toEnum (Int -> FileAttributeType)
-> (CInt -> Int) -> CInt -> FileAttributeType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) (IO CInt -> IO FileAttributeType)
-> IO CInt -> IO FileAttributeType
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_get_attribute_type Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoRemoveAttribute :: (FileInfoClass info, GlibString string) => info
-> string
-> IO ()
fileInfoRemoveAttribute :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO ()
fileInfoRemoveAttribute info
info string
attribute =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO ()
g_file_info_remove_attribute Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeAsString :: (FileInfoClass info, GlibString string) => info
-> string
-> IO string
fileInfoGetAttributeAsString :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO string
fileInfoGetAttributeAsString info
info string
attribute =
string -> (CString -> IO string) -> IO string
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO string) -> IO string)
-> (CString -> IO string) -> IO string
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CString
g_file_info_get_attribute_as_string Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
IO CString -> (CString -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetAttributeStatus :: (FileInfoClass info, GlibString string) => info
-> string
-> IO FileAttributeStatus
fileInfoGetAttributeStatus :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO FileAttributeStatus
fileInfoGetAttributeStatus info
info string
attribute =
(CInt -> FileAttributeStatus) -> IO CInt -> IO FileAttributeStatus
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM (Int -> FileAttributeStatus
forall a. Enum a => Int -> a
toEnum (Int -> FileAttributeStatus)
-> (CInt -> Int) -> CInt -> FileAttributeStatus
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) (IO CInt -> IO FileAttributeStatus)
-> IO CInt -> IO FileAttributeStatus
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_get_attribute_status Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeString :: (FileInfoClass info, GlibString string) => info
-> string
-> IO string
fileInfoGetAttributeString :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO string
fileInfoGetAttributeString info
info string
attribute =
string -> (CString -> IO string) -> IO string
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO string) -> IO string)
-> (CString -> IO string) -> IO string
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CString
g_file_info_get_attribute_string Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
IO CString -> (CString -> IO string) -> IO string
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetAttributeStringList :: (FileInfoClass info, GlibString string) => info
-> string
-> IO [string]
fileInfoGetAttributeStringList :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO [string]
fileInfoGetAttributeStringList info
info string
attribute =
string -> (CString -> IO [string]) -> IO [string]
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO [string]) -> IO [string])
-> (CString -> IO [string]) -> IO [string]
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo
-> (Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString))
-> (Ptr FileInfo -> IO (Ptr CString)) -> IO (Ptr CString)
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO (Ptr CString)
g_file_info_get_attribute_stringv Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
IO (Ptr CString) -> (Ptr CString -> IO [string]) -> IO [string]
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Ptr CString -> IO [string]
forall s. GlibString s => Ptr CString -> IO [s]
readUTFStringArray0
fileInfoGetAttributeByteString :: (FileInfoClass info, GlibString string) => info
-> string
-> IO ByteString
fileInfoGetAttributeByteString :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO ByteString
fileInfoGetAttributeByteString info
info string
attribute =
string -> (CString -> IO ByteString) -> IO ByteString
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ByteString) -> IO ByteString)
-> (CString -> IO ByteString) -> IO ByteString
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr -> do
CString
sPtr <- (\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CString
g_file_info_get_attribute_byte_string Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
Int
sLen <- CChar -> CString -> IO Int
forall a. (Storable a, Eq a) => a -> Ptr a -> IO Int
lengthArray0 CChar
0 CString
sPtr
Ptr Word8 -> Int -> IO () -> IO ByteString
unsafePackCStringFinalizer (CString -> Ptr Word8
forall a b. Ptr a -> Ptr b
castPtr CString
sPtr) (Int -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int
sLen)
(Ptr () -> IO ()
g_free (CString -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr CString
sPtr))
fileInfoGetAttributeBool :: (FileInfoClass info, GlibString string) => info
-> string
-> IO Bool
fileInfoGetAttributeBool :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO Bool
fileInfoGetAttributeBool info
info string
attribute =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_get_attribute_boolean Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeWord32 :: (FileInfoClass info, GlibString string) => info
-> string
-> IO Word32
fileInfoGetAttributeWord32 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO Word32
fileInfoGetAttributeWord32 info
info string
attribute =
(CUInt -> Word32) -> IO CUInt -> IO Word32
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CUInt -> Word32
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CUInt -> IO Word32) -> IO CUInt -> IO Word32
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CUInt) -> IO CUInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CUInt) -> IO CUInt)
-> (CString -> IO CUInt) -> IO CUInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr -> do
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CUInt) -> IO CUInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CUInt) -> IO CUInt)
-> (Ptr FileInfo -> IO CUInt) -> IO CUInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CUInt
g_file_info_get_attribute_uint32 Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeInt32 :: (FileInfoClass info, GlibString string) => info
-> string
-> IO Int32
fileInfoGetAttributeInt32 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO Int32
fileInfoGetAttributeInt32 info
info string
attribute =
(CInt -> Int32) -> IO CInt -> IO Int32
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Int32
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CInt -> IO Int32) -> IO CInt -> IO Int32
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr -> do
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CInt
g_file_info_get_attribute_int32 Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeWord64 :: (FileInfoClass info, GlibString string) => info
-> string
-> IO Word64
fileInfoGetAttributeWord64 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO Word64
fileInfoGetAttributeWord64 info
info string
attribute =
(CULong -> Word64) -> IO CULong -> IO Word64
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CULong -> Word64
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CULong -> IO Word64) -> IO CULong -> IO Word64
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CULong) -> IO CULong
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CULong) -> IO CULong)
-> (CString -> IO CULong) -> IO CULong
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr -> do
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CULong) -> IO CULong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CULong) -> IO CULong)
-> (Ptr FileInfo -> IO CULong) -> IO CULong
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CULong
g_file_info_get_attribute_uint64 Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeInt64 :: (FileInfoClass info, GlibString string) => info
-> string
-> IO Int64
fileInfoGetAttributeInt64 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO Int64
fileInfoGetAttributeInt64 info
info string
attribute =
(CLong -> Int64) -> IO CLong -> IO Int64
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CLong -> Int64
forall a b. (Integral a, Num b) => a -> b
fromIntegral (IO CLong -> IO Int64) -> IO CLong -> IO Int64
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CLong) -> IO CLong
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CLong) -> IO CLong)
-> (CString -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr -> do
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CLong) -> IO CLong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CLong) -> IO CLong)
-> (Ptr FileInfo -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO CLong
g_file_info_get_attribute_int64 Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
fileInfoGetAttributeObject :: (FileInfoClass info, GlibString string) => info
-> string
-> IO (Maybe GObject)
fileInfoGetAttributeObject :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO (Maybe GObject)
fileInfoGetAttributeObject info
info string
attribute =
string -> (CString -> IO (Maybe GObject)) -> IO (Maybe GObject)
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO (Maybe GObject)) -> IO (Maybe GObject))
-> (CString -> IO (Maybe GObject)) -> IO (Maybe GObject)
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO (Ptr ())) -> IO (Ptr ())
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO (Ptr ())) -> IO (Ptr ()))
-> (Ptr FileInfo -> IO (Ptr ())) -> IO (Ptr ())
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO (Ptr ())
g_file_info_get_attribute_object Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr
IO (Ptr ()) -> (Ptr () -> IO (Maybe GObject)) -> IO (Maybe GObject)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= \Ptr ()
x -> (IO (Ptr GObject) -> IO GObject)
-> IO (Ptr GObject) -> IO (Maybe GObject)
forall a. (IO (Ptr a) -> IO a) -> IO (Ptr a) -> IO (Maybe a)
maybeNull ((ForeignPtr GObject -> GObject, FinalizerPtr GObject)
-> IO (Ptr GObject) -> IO GObject
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
makeNewGObject (ForeignPtr GObject -> GObject, FinalizerPtr GObject)
forall {a}. (ForeignPtr GObject -> GObject, FinalizerPtr a)
mkGObject) (Ptr GObject -> IO (Ptr GObject)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (Ptr GObject -> IO (Ptr GObject))
-> Ptr GObject -> IO (Ptr GObject)
forall a b. (a -> b) -> a -> b
$ Ptr () -> Ptr GObject
forall a b. Ptr a -> Ptr b
castPtr Ptr ()
x)
fileInfoSetAttributeStatus :: (FileInfoClass info, GlibString string) => info
-> string
-> FileAttributeStatus
-> IO Bool
fileInfoSetAttributeStatus :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> FileAttributeStatus -> IO Bool
fileInfoSetAttributeStatus info
info string
attribute FileAttributeStatus
status =
(CInt -> Bool) -> IO CInt -> IO Bool
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (IO CInt -> IO Bool) -> IO CInt -> IO Bool
forall a b. (a -> b) -> a -> b
$
string -> (CString -> IO CInt) -> IO CInt
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO CInt) -> IO CInt)
-> (CString -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CInt
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CInt -> IO CInt
g_file_info_set_attribute_status Ptr FileInfo
argPtr1 CString
arg2 CInt
arg3)
{-# LINE 334 "./System/GIO/File/FileInfo.chs" #-}
(toFileInfo info)
CString
attributePtr
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt)
-> (FileAttributeStatus -> Int) -> FileAttributeStatus -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FileAttributeStatus -> Int
forall a. Enum a => a -> Int
fromEnum) FileAttributeStatus
status)
fileInfoSetAttributeString :: (FileInfoClass info, GlibString string) => info
-> string
-> string
-> IO ()
fileInfoSetAttributeString :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> string -> IO ()
fileInfoSetAttributeString info
info string
attribute string
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attrValue ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attrValuePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CString
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CString -> IO ()
g_file_info_set_attribute_string Ptr FileInfo
argPtr1 CString
arg2 CString
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr CString
attrValuePtr
fileInfoSetAttributeStringList :: (FileInfoClass info, GlibString string) => info
-> string
-> [string]
-> IO ()
fileInfoSetAttributeStringList :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> [string] -> IO ()
fileInfoSetAttributeStringList info
info string
attribute [string]
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
[string] -> (Ptr CString -> IO ()) -> IO ()
forall s a. GlibString s => [s] -> (Ptr CString -> IO a) -> IO a
withUTFStringArray0 [string]
attrValue ((Ptr CString -> IO ()) -> IO ())
-> (Ptr CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ Ptr CString
attrValuePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 Ptr CString
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> Ptr CString -> IO ()
g_file_info_set_attribute_stringv Ptr FileInfo
argPtr1 CString
arg2 Ptr CString
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr Ptr CString
attrValuePtr
fileInfoSetAttributeByteString :: (FileInfoClass info, GlibString string) => info
-> string
-> ByteString
-> IO ()
fileInfoSetAttributeByteString :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> ByteString -> IO ()
fileInfoSetAttributeByteString info
info string
attribute ByteString
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
ByteString -> (CString -> IO ()) -> IO ()
forall a. ByteString -> (CString -> IO a) -> IO a
useAsCString ByteString
attrValue ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attrValuePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CString
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CString -> IO ()
g_file_info_set_attribute_byte_string Ptr FileInfo
argPtr1 CString
arg2 CString
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr CString
attrValuePtr
fileInfoSetAttributeBool :: (FileInfoClass info, GlibString string) => info
-> string
-> Bool
-> IO ()
fileInfoSetAttributeBool :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Bool -> IO ()
fileInfoSetAttributeBool info
info string
attribute Bool
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CInt
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CInt -> IO ()
g_file_info_set_attribute_boolean Ptr FileInfo
argPtr1 CString
arg2 CInt
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
attrValue)
fileInfoSetAttributeWord32 :: (FileInfoClass info, GlibString string) => info
-> string
-> Word32
-> IO ()
fileInfoSetAttributeWord32 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Word32 -> IO ()
fileInfoSetAttributeWord32 info
info string
attribute Word32
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CUInt
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CUInt -> IO ()
g_file_info_set_attribute_uint32 Ptr FileInfo
argPtr1 CString
arg2 CUInt
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Word32 -> CUInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral Word32
attrValue)
fileInfoSetAttributeInt32 :: (FileInfoClass info, GlibString string) => info
-> string
-> Int32
-> IO ()
fileInfoSetAttributeInt32 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Int32 -> IO ()
fileInfoSetAttributeInt32 info
info string
attribute Int32
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CInt
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CInt -> IO ()
g_file_info_set_attribute_int32 Ptr FileInfo
argPtr1 CString
arg2 CInt
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Int32 -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int32
attrValue)
fileInfoSetAttributeWord64 :: (FileInfoClass info, GlibString string) => info
-> string
-> Word64
-> IO ()
fileInfoSetAttributeWord64 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Word64 -> IO ()
fileInfoSetAttributeWord64 info
info string
attribute Word64
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CULong
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CULong -> IO ()
g_file_info_set_attribute_uint64 Ptr FileInfo
argPtr1 CString
arg2 CULong
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Word64 -> CULong
forall a b. (Integral a, Num b) => a -> b
fromIntegral Word64
attrValue)
fileInfoSetAttributeInt64 :: (FileInfoClass info, GlibString string) => info
-> string
-> Int64
-> IO ()
fileInfoSetAttributeInt64 :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> Int64 -> IO ()
fileInfoSetAttributeInt64 info
info string
attribute Int64
attrValue =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 CLong
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> CLong -> IO ()
g_file_info_set_attribute_int64 Ptr FileInfo
argPtr1 CString
arg2 CLong
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Int64 -> CLong
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int64
attrValue)
fileInfoSetAttributeObject :: (FileInfoClass info, GlibString string) => info
-> string
-> GObject
-> IO ()
fileInfoSetAttributeObject :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> GObject -> IO ()
fileInfoSetAttributeObject info
info string
attribute (GObject ForeignPtr GObject
attrValue) =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
attribute ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
attributePtr ->
ForeignPtr GObject -> (Ptr GObject -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr GObject
attrValue ((Ptr GObject -> IO ()) -> IO ())
-> (Ptr GObject -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr GObject
attrValuePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 Ptr ()
arg3 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> Ptr () -> IO ()
g_file_info_set_attribute_object Ptr FileInfo
argPtr1 CString
arg2 Ptr ()
arg3) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
attributePtr (Ptr GObject -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr Ptr GObject
attrValuePtr)
fileInfoClearStatus :: FileInfoClass info => info -> IO ()
fileInfoClearStatus :: forall info. FileInfoClass info => info -> IO ()
fileInfoClearStatus info
info =
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO ()
g_file_info_clear_status Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetFileType :: FileInfoClass info => info
-> FileType
fileInfoGetFileType :: forall info. FileInfoClass info => info -> FileType
fileInfoGetFileType info
info =
(Int -> FileType
forall a. Enum a => Int -> a
toEnum (Int -> FileType) -> (CInt -> Int) -> CInt -> FileType
forall b c a. (b -> c) -> (a -> b) -> a -> c
. CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral) (CInt -> FileType) -> CInt -> FileType
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CInt
g_file_info_get_file_type Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetIsHidden :: FileInfoClass info => info
-> Bool
fileInfoGetIsHidden :: forall info. FileInfoClass info => info -> Bool
fileInfoGetIsHidden info
info =
CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (CInt -> Bool) -> CInt -> Bool
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CInt
g_file_info_get_is_hidden Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetIsBackup :: FileInfoClass info => info
-> Bool
fileInfoGetIsBackup :: forall info. FileInfoClass info => info -> Bool
fileInfoGetIsBackup info
info =
CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (CInt -> Bool) -> CInt -> Bool
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CInt
g_file_info_get_is_backup Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetIsSymlink :: FileInfoClass info => info
-> Bool
fileInfoGetIsSymlink :: forall info. FileInfoClass info => info -> Bool
fileInfoGetIsSymlink info
info =
CInt -> Bool
forall a. (Eq a, Num a) => a -> Bool
toBool (CInt -> Bool) -> CInt -> Bool
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CInt
g_file_info_get_is_symlink Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetName :: FileInfoClass info => info
-> Maybe ByteString
fileInfoGetName :: forall info. FileInfoClass info => info -> Maybe ByteString
fileInfoGetName info
info =
IO (Maybe ByteString) -> Maybe ByteString
forall a. IO a -> a
unsafePerformIO (IO (Maybe ByteString) -> Maybe ByteString)
-> IO (Maybe ByteString) -> Maybe ByteString
forall a b. (a -> b) -> a -> b
$ do
CString
sPtr <- (\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_name Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
if CString
sPtr CString -> CString -> Bool
forall a. Eq a => a -> a -> Bool
== CString
forall a. Ptr a
nullPtr
then Maybe ByteString -> IO (Maybe ByteString)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ByteString
forall a. Maybe a
Nothing
else do
Int
sLen <- CChar -> CString -> IO Int
forall a. (Storable a, Eq a) => a -> Ptr a -> IO Int
lengthArray0 CChar
0 CString
sPtr
(ByteString -> Maybe ByteString)
-> IO ByteString -> IO (Maybe ByteString)
forall (m :: * -> *) a1 r. Monad m => (a1 -> r) -> m a1 -> m r
liftM ByteString -> Maybe ByteString
forall a. a -> Maybe a
Just (IO ByteString -> IO (Maybe ByteString))
-> IO ByteString -> IO (Maybe ByteString)
forall a b. (a -> b) -> a -> b
$ Ptr Word8 -> Int -> IO () -> IO ByteString
unsafePackCStringFinalizer (CString -> Ptr Word8
forall a b. Ptr a -> Ptr b
castPtr CString
sPtr) (Int -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int
sLen)
(Ptr () -> IO ()
g_free (CString -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr CString
sPtr))
fileInfoGetDisplayName :: (FileInfoClass info, GlibString string) => info
-> Maybe string
fileInfoGetDisplayName :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> Maybe string
fileInfoGetDisplayName info
info =
IO (Maybe string) -> Maybe string
forall a. IO a -> a
unsafePerformIO (IO (Maybe string) -> Maybe string)
-> IO (Maybe string) -> Maybe string
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_display_name Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
IO CString -> (CString -> IO (Maybe string)) -> IO (Maybe string)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (CString -> IO string) -> CString -> IO (Maybe string)
forall a b. (Ptr a -> IO b) -> Ptr a -> IO (Maybe b)
maybePeek CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetEditName :: (FileInfoClass info, GlibString string) => info
-> Maybe string
fileInfoGetEditName :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> Maybe string
fileInfoGetEditName info
info =
IO (Maybe string) -> Maybe string
forall a. IO a -> a
unsafePerformIO (IO (Maybe string) -> Maybe string)
-> IO (Maybe string) -> Maybe string
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_edit_name Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
IO CString -> (CString -> IO (Maybe string)) -> IO (Maybe string)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (CString -> IO string) -> CString -> IO (Maybe string)
forall a b. (Ptr a -> IO b) -> Ptr a -> IO (Maybe b)
maybePeek CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetIcon :: FileInfoClass info => info
-> IO Icon
fileInfoGetIcon :: forall info. FileInfoClass info => info -> IO Icon
fileInfoGetIcon info
info =
(ForeignPtr Icon -> Icon, FinalizerPtr Icon)
-> IO (Ptr Icon) -> IO Icon
forall obj.
GObjectClass obj =>
(ForeignPtr obj -> obj, FinalizerPtr obj) -> IO (Ptr obj) -> IO obj
makeNewGObject (ForeignPtr Icon -> Icon, FinalizerPtr Icon)
forall {a}. (ForeignPtr Icon -> Icon, FinalizerPtr a)
mkIcon (IO (Ptr Icon) -> IO Icon) -> IO (Ptr Icon) -> IO Icon
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo
-> (Ptr FileInfo -> IO (Ptr Icon)) -> IO (Ptr Icon)
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO (Ptr Icon)) -> IO (Ptr Icon))
-> (Ptr FileInfo -> IO (Ptr Icon)) -> IO (Ptr Icon)
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO (Ptr Icon)
g_file_info_get_icon Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetContentType :: (FileInfoClass info, GlibString string) => info
-> Maybe string
fileInfoGetContentType :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> Maybe string
fileInfoGetContentType info
info =
IO (Maybe string) -> Maybe string
forall a. IO a -> a
unsafePerformIO (IO (Maybe string) -> Maybe string)
-> IO (Maybe string) -> Maybe string
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_content_type Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
IO CString -> (CString -> IO (Maybe string)) -> IO (Maybe string)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (CString -> IO string) -> CString -> IO (Maybe string)
forall a b. (Ptr a -> IO b) -> Ptr a -> IO (Maybe b)
maybePeek CString -> IO string
forall s. GlibString s => CString -> IO s
peekUTFString
fileInfoGetModificationTime :: FileInfoClass info => info
-> GTimeVal
fileInfoGetModificationTime :: forall info. FileInfoClass info => info -> GTimeVal
fileInfoGetModificationTime info
info =
IO GTimeVal -> GTimeVal
forall a. IO a -> a
unsafePerformIO (IO GTimeVal -> GTimeVal) -> IO GTimeVal -> GTimeVal
forall a b. (a -> b) -> a -> b
$
(Ptr GTimeVal -> IO GTimeVal) -> IO GTimeVal
forall a b. Storable a => (Ptr a -> IO b) -> IO b
alloca ((Ptr GTimeVal -> IO GTimeVal) -> IO GTimeVal)
-> (Ptr GTimeVal -> IO GTimeVal) -> IO GTimeVal
forall a b. (a -> b) -> a -> b
$ \ Ptr GTimeVal
timeValPtr -> do
(\(FileInfo ForeignPtr FileInfo
arg1) Ptr ()
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> Ptr () -> IO ()
g_file_info_get_modification_time Ptr FileInfo
argPtr1 Ptr ()
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Ptr GTimeVal -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr Ptr GTimeVal
timeValPtr)
Ptr GTimeVal -> IO GTimeVal
forall a. Storable a => Ptr a -> IO a
peek Ptr GTimeVal
timeValPtr
fileInfoGetSize :: FileInfoClass info => info
-> Int64
fileInfoGetSize :: forall info. FileInfoClass info => info -> Int64
fileInfoGetSize info
info =
CLong -> Int64
forall a b. (Integral a, Num b) => a -> b
fromIntegral (CLong -> Int64) -> CLong -> Int64
forall a b. (a -> b) -> a -> b
$ IO CLong -> CLong
forall a. IO a -> a
unsafePerformIO (IO CLong -> CLong) -> IO CLong -> CLong
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CLong) -> IO CLong
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CLong) -> IO CLong)
-> (Ptr FileInfo -> IO CLong) -> IO CLong
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CLong
g_file_info_get_size Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoGetSymlinkTarget :: (FileInfoClass info, GlibString string) => info
-> Maybe string
fileInfoGetSymlinkTarget :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> Maybe string
fileInfoGetSymlinkTarget info
info =
IO (Maybe string) -> Maybe string
forall a. IO a -> a
unsafePerformIO (IO (Maybe string) -> Maybe string)
-> IO (Maybe string) -> Maybe string
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_symlink_target Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
IO CString -> (CString -> IO (Maybe string)) -> IO (Maybe string)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (CString -> IO string) -> CString -> IO (Maybe string)
forall a b. (Ptr a -> IO b) -> Ptr a -> IO (Maybe b)
maybePeek CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetEtag :: (FileInfoClass info, GlibString string) => info
-> Maybe string
fileInfoGetEtag :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> Maybe string
fileInfoGetEtag info
info =
IO (Maybe string) -> Maybe string
forall a. IO a -> a
unsafePerformIO (IO (Maybe string) -> Maybe string)
-> IO (Maybe string) -> Maybe string
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CString) -> IO CString)
-> (Ptr FileInfo -> IO CString) -> IO CString
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CString
g_file_info_get_etag Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
IO CString -> (CString -> IO (Maybe string)) -> IO (Maybe string)
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= (CString -> IO string) -> CString -> IO (Maybe string)
forall a b. (Ptr a -> IO b) -> Ptr a -> IO (Maybe b)
maybePeek CString -> IO string
forall s. GlibString s => CString -> IO s
readUTFString
fileInfoGetSortOrder :: FileInfoClass info => info
-> Int
fileInfoGetSortOrder :: forall info. FileInfoClass info => info -> Int
fileInfoGetSortOrder info
info =
CInt -> Int
forall a b. (Integral a, Num b) => a -> b
fromIntegral (CInt -> Int) -> CInt -> Int
forall a b. (a -> b) -> a -> b
$ IO CInt -> CInt
forall a. IO a -> a
unsafePerformIO (IO CInt -> CInt) -> IO CInt -> CInt
forall a b. (a -> b) -> a -> b
$
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO CInt) -> IO CInt)
-> (Ptr FileInfo -> IO CInt) -> IO CInt
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO CInt
g_file_info_get_sort_order Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoUnsetAttributeMask :: FileInfoClass info => info -> IO ()
fileInfoUnsetAttributeMask :: forall info. FileInfoClass info => info -> IO ()
fileInfoUnsetAttributeMask info
info =
(\(FileInfo ForeignPtr FileInfo
arg1) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> IO ()
g_file_info_unset_attribute_mask Ptr FileInfo
argPtr1) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info)
fileInfoSetFileType :: FileInfoClass info => info -> FileType -> IO ()
fileInfoSetFileType :: forall info. FileInfoClass info => info -> FileType -> IO ()
fileInfoSetFileType info
info FileType
fType =
(\(FileInfo ForeignPtr FileInfo
arg1) CInt
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CInt -> IO ()
g_file_info_set_file_type Ptr FileInfo
argPtr1 CInt
arg2)
{-# LINE 555 "./System/GIO/File/FileInfo.chs" #-}
(toFileInfo info)
((Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral (Int -> CInt) -> (FileType -> Int) -> FileType -> CInt
forall b c a. (b -> c) -> (a -> b) -> a -> c
. FileType -> Int
forall a. Enum a => a -> Int
fromEnum) FileType
fType)
fileInfoSetIsHidden :: FileInfoClass info => info -> Bool -> IO ()
fileInfoSetIsHidden :: forall info. FileInfoClass info => info -> Bool -> IO ()
fileInfoSetIsHidden info
info Bool
isHidden =
(\(FileInfo ForeignPtr FileInfo
arg1) CInt
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CInt -> IO ()
g_file_info_set_is_hidden Ptr FileInfo
argPtr1 CInt
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
isHidden)
fileInfoSetIsSymlink :: FileInfoClass info => info -> Bool -> IO ()
fileInfoSetIsSymlink :: forall info. FileInfoClass info => info -> Bool -> IO ()
fileInfoSetIsSymlink info
info Bool
isSymlink =
(\(FileInfo ForeignPtr FileInfo
arg1) CInt
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CInt -> IO ()
g_file_info_set_is_symlink Ptr FileInfo
argPtr1 CInt
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Bool -> CInt
forall a. Num a => Bool -> a
fromBool Bool
isSymlink)
fileInfoSetName :: FileInfoClass info => info -> ByteString -> IO ()
fileInfoSetName :: forall info. FileInfoClass info => info -> ByteString -> IO ()
fileInfoSetName info
info ByteString
name =
ByteString -> (CString -> IO ()) -> IO ()
forall a. ByteString -> (CString -> IO a) -> IO a
useAsCString ByteString
name ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
namePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO ()
g_file_info_set_name Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
namePtr
fileInfoSetDisplayName :: (FileInfoClass info, GlibString string) => info -> string -> IO ()
fileInfoSetDisplayName :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO ()
fileInfoSetDisplayName info
info string
displayName =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
displayName ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
displayNamePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO ()
g_file_info_set_display_name Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
displayNamePtr
fileInfoSetEditName :: (FileInfoClass info, GlibString string) => info -> string -> IO ()
fileInfoSetEditName :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO ()
fileInfoSetEditName info
info string
editName =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
editName ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
editNamePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO ()
g_file_info_set_edit_name Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
editNamePtr
fileInfoSetIcon :: FileInfoClass info => info -> Icon -> IO ()
fileInfoSetIcon :: forall info. FileInfoClass info => info -> Icon -> IO ()
fileInfoSetIcon info
info Icon
icon =
(\(FileInfo ForeignPtr FileInfo
arg1) (Icon ForeignPtr Icon
arg2) -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->ForeignPtr Icon -> (Ptr Icon -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr Icon
arg2 ((Ptr Icon -> IO ()) -> IO ()) -> (Ptr Icon -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr Icon
argPtr2 ->Ptr FileInfo -> Ptr Icon -> IO ()
g_file_info_set_icon Ptr FileInfo
argPtr1 Ptr Icon
argPtr2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Icon -> Icon
forall o. IconClass o => o -> Icon
toIcon Icon
icon)
fileInfoSetContentType :: (FileInfoClass info, GlibString string) => info
-> string
-> IO ()
fileInfoSetContentType :: forall info string.
(FileInfoClass info, GlibString string) =>
info -> string -> IO ()
fileInfoSetContentType info
info string
contentType =
string -> (CString -> IO ()) -> IO ()
forall a. string -> (CString -> IO a) -> IO a
forall s a. GlibString s => s -> (CString -> IO a) -> IO a
withUTFString string
contentType ((CString -> IO ()) -> IO ()) -> (CString -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ CString
contentTypePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) CString
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CString -> IO ()
g_file_info_set_content_type Ptr FileInfo
argPtr1 CString
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) CString
contentTypePtr
fileInfoSetModificationTime :: FileInfoClass info => info
-> GTimeVal
-> IO ()
fileInfoSetModificationTime :: forall info. FileInfoClass info => info -> GTimeVal -> IO ()
fileInfoSetModificationTime info
info GTimeVal
mtime =
GTimeVal -> (Ptr GTimeVal -> IO ()) -> IO ()
forall a b. Storable a => a -> (Ptr a -> IO b) -> IO b
with GTimeVal
mtime ((Ptr GTimeVal -> IO ()) -> IO ())
-> (Ptr GTimeVal -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ Ptr GTimeVal
mtimePtr ->
(\(FileInfo ForeignPtr FileInfo
arg1) Ptr ()
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> Ptr () -> IO ()
g_file_info_set_modification_time Ptr FileInfo
argPtr1 Ptr ()
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Ptr GTimeVal -> Ptr ()
forall a b. Ptr a -> Ptr b
castPtr Ptr GTimeVal
mtimePtr)
fileInfoSetSize :: FileInfoClass info => info
-> Int64
-> IO ()
fileInfoSetSize :: forall info. FileInfoClass info => info -> Int64 -> IO ()
fileInfoSetSize info
info Int64
size =
(\(FileInfo ForeignPtr FileInfo
arg1) CLong
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CLong -> IO ()
g_file_info_set_size Ptr FileInfo
argPtr1 CLong
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Int64 -> CLong
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int64
size)
fileInfoSetSortOrder :: FileInfoClass info => info
-> Int
-> IO ()
fileInfoSetSortOrder :: forall info. FileInfoClass info => info -> Int -> IO ()
fileInfoSetSortOrder info
info Int
sortOrder =
(\(FileInfo ForeignPtr FileInfo
arg1) CInt
arg2 -> ForeignPtr FileInfo -> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. ForeignPtr a -> (Ptr a -> IO b) -> IO b
withForeignPtr ForeignPtr FileInfo
arg1 ((Ptr FileInfo -> IO ()) -> IO ())
-> (Ptr FileInfo -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \Ptr FileInfo
argPtr1 ->Ptr FileInfo -> CInt -> IO ()
g_file_info_set_sort_order Ptr FileInfo
argPtr1 CInt
arg2) (info -> FileInfo
forall o. FileInfoClass o => o -> FileInfo
toFileInfo info
info) (Int -> CInt
forall a b. (Integral a, Num b) => a -> b
fromIntegral Int
sortOrder)
foreign import ccall safe "g_file_info_new"
g_file_info_new :: (IO (Ptr FileInfo))
foreign import ccall safe "g_file_info_dup"
g_file_info_dup :: ((Ptr FileInfo) -> (IO (Ptr FileInfo)))
foreign import ccall safe "g_file_info_copy_into"
g_file_info_copy_into :: ((Ptr FileInfo) -> ((Ptr FileInfo) -> (IO ())))
foreign import ccall safe "g_file_info_has_attribute"
g_file_info_has_attribute :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_has_namespace"
g_file_info_has_namespace :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_list_attributes"
g_file_info_list_attributes :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr (Ptr CChar)))))
foreign import ccall safe "g_file_info_get_attribute_type"
g_file_info_get_attribute_type :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_remove_attribute"
g_file_info_remove_attribute :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "g_file_info_get_attribute_as_string"
g_file_info_get_attribute_as_string :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr CChar))))
foreign import ccall safe "g_file_info_get_attribute_status"
g_file_info_get_attribute_status :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_get_attribute_string"
g_file_info_get_attribute_string :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr CChar))))
foreign import ccall safe "g_file_info_get_attribute_stringv"
g_file_info_get_attribute_stringv :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr (Ptr CChar)))))
foreign import ccall safe "g_file_info_get_attribute_byte_string"
g_file_info_get_attribute_byte_string :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr CChar))))
foreign import ccall unsafe "g_free"
g_free :: ((Ptr ()) -> (IO ()))
foreign import ccall safe "g_file_info_get_attribute_boolean"
g_file_info_get_attribute_boolean :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_get_attribute_uint32"
g_file_info_get_attribute_uint32 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CUInt)))
foreign import ccall safe "g_file_info_get_attribute_int32"
g_file_info_get_attribute_int32 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CInt)))
foreign import ccall safe "g_file_info_get_attribute_uint64"
g_file_info_get_attribute_uint64 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CULong)))
foreign import ccall safe "g_file_info_get_attribute_int64"
g_file_info_get_attribute_int64 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO CLong)))
foreign import ccall safe "g_file_info_get_attribute_object"
g_file_info_get_attribute_object :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO (Ptr ()))))
foreign import ccall safe "g_file_info_set_attribute_status"
g_file_info_set_attribute_status :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CInt -> (IO CInt))))
foreign import ccall safe "g_file_info_set_attribute_string"
g_file_info_set_attribute_string :: ((Ptr FileInfo) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_stringv"
g_file_info_set_attribute_stringv :: ((Ptr FileInfo) -> ((Ptr CChar) -> ((Ptr (Ptr CChar)) -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_byte_string"
g_file_info_set_attribute_byte_string :: ((Ptr FileInfo) -> ((Ptr CChar) -> ((Ptr CChar) -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_boolean"
g_file_info_set_attribute_boolean :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CInt -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_uint32"
g_file_info_set_attribute_uint32 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CUInt -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_int32"
g_file_info_set_attribute_int32 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CInt -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_uint64"
g_file_info_set_attribute_uint64 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CULong -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_int64"
g_file_info_set_attribute_int64 :: ((Ptr FileInfo) -> ((Ptr CChar) -> (CLong -> (IO ()))))
foreign import ccall safe "g_file_info_set_attribute_object"
g_file_info_set_attribute_object :: ((Ptr FileInfo) -> ((Ptr CChar) -> ((Ptr ()) -> (IO ()))))
foreign import ccall safe "g_file_info_clear_status"
g_file_info_clear_status :: ((Ptr FileInfo) -> (IO ()))
foreign import ccall safe "g_file_info_get_file_type"
g_file_info_get_file_type :: ((Ptr FileInfo) -> (IO CInt))
foreign import ccall safe "g_file_info_get_is_hidden"
g_file_info_get_is_hidden :: ((Ptr FileInfo) -> (IO CInt))
foreign import ccall safe "g_file_info_get_is_backup"
g_file_info_get_is_backup :: ((Ptr FileInfo) -> (IO CInt))
foreign import ccall safe "g_file_info_get_is_symlink"
g_file_info_get_is_symlink :: ((Ptr FileInfo) -> (IO CInt))
foreign import ccall safe "g_file_info_get_name"
g_file_info_get_name :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_display_name"
g_file_info_get_display_name :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_edit_name"
g_file_info_get_edit_name :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_icon"
g_file_info_get_icon :: ((Ptr FileInfo) -> (IO (Ptr Icon)))
foreign import ccall safe "g_file_info_get_content_type"
g_file_info_get_content_type :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_modification_time"
g_file_info_get_modification_time :: ((Ptr FileInfo) -> ((Ptr ()) -> (IO ())))
foreign import ccall safe "g_file_info_get_size"
g_file_info_get_size :: ((Ptr FileInfo) -> (IO CLong))
foreign import ccall safe "g_file_info_get_symlink_target"
g_file_info_get_symlink_target :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_etag"
g_file_info_get_etag :: ((Ptr FileInfo) -> (IO (Ptr CChar)))
foreign import ccall safe "g_file_info_get_sort_order"
g_file_info_get_sort_order :: ((Ptr FileInfo) -> (IO CInt))
foreign import ccall safe "g_file_info_unset_attribute_mask"
g_file_info_unset_attribute_mask :: ((Ptr FileInfo) -> (IO ()))
foreign import ccall safe "g_file_info_set_file_type"
g_file_info_set_file_type :: ((Ptr FileInfo) -> (CInt -> (IO ())))
foreign import ccall safe "g_file_info_set_is_hidden"
g_file_info_set_is_hidden :: ((Ptr FileInfo) -> (CInt -> (IO ())))
foreign import ccall safe "g_file_info_set_is_symlink"
g_file_info_set_is_symlink :: ((Ptr FileInfo) -> (CInt -> (IO ())))
foreign import ccall safe "g_file_info_set_name"
g_file_info_set_name :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "g_file_info_set_display_name"
g_file_info_set_display_name :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "g_file_info_set_edit_name"
g_file_info_set_edit_name :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "g_file_info_set_icon"
g_file_info_set_icon :: ((Ptr FileInfo) -> ((Ptr Icon) -> (IO ())))
foreign import ccall safe "g_file_info_set_content_type"
g_file_info_set_content_type :: ((Ptr FileInfo) -> ((Ptr CChar) -> (IO ())))
foreign import ccall safe "g_file_info_set_modification_time"
g_file_info_set_modification_time :: ((Ptr FileInfo) -> ((Ptr ()) -> (IO ())))
foreign import ccall safe "g_file_info_set_size"
g_file_info_set_size :: ((Ptr FileInfo) -> (CLong -> (IO ())))
foreign import ccall safe "g_file_info_set_sort_order"
g_file_info_set_sort_order :: ((Ptr FileInfo) -> (CInt -> (IO ())))