{-# LINE 1 "System/GIO/File/FileAttribute.hsc" #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE ScopedTypeVariables #-}
module System.GIO.File.FileAttribute (
FileAttributeType (..),
FileAttributeInfo (..),
FileAttributeInfoFlags (..),
fileAttributeStandardType,
fileAttributeStandardIsHidden,
fileAttributeStandardIsBackup,
fileAttributeStandardIsSymlink,
fileAttributeStandardIsVirtual,
fileAttributeStandardName,
fileAttributeStandardDisplayName,
fileAttributeStandardEditName,
fileAttributeStandardCopyName,
fileAttributeStandardIcon,
fileAttributeStandardContentType,
fileAttributeStandardFastContentType,
fileAttributeStandardSize,
{-# LINE 78 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardAllocatedSize,
{-# LINE 80 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardSymlinkTarget,
fileAttributeStandardTargetURI,
fileAttributeStandardSortOrder,
fileAttributeEtagValue,
fileAttributeIDFile,
fileAttributeIDFilesystem,
fileAttributeAccessCanRead,
fileAttributeAccessCanWrite,
fileAttributeAccessCanExecute,
fileAttributeAccessCanDelete,
fileAttributeAccessCanTrash,
fileAttributeAccessCanRename,
fileAttributeMountableCanMount,
fileAttributeMountableCanUnmount,
fileAttributeMountableCanEject,
fileAttributeMountableUnixDevice,
{-# LINE 97 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableUnixDeviceFile,
fileAttributeMountableCanStart,
fileAttributeMountableCanDegraded,
fileAttributeMountableCanStop,
fileAttributeMountableStartStopType,
fileAttributeMountableCanPoll,
{-# LINE 104 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableHalUDI,
fileAttributeTimeModified,
fileAttributeTimeModifiedUSec,
fileAttributeTimeAccess,
fileAttributeTimeAccessUSec,
fileAttributeTimeChanged,
fileAttributeTimeChangedUSec,
fileAttributeTimeCreated,
fileAttributeTimeCreatedUSec,
fileAttributeUnixDevice,
fileAttributeUnixInode,
fileAttributeUnixMode,
fileAttributeUnixNLink,
fileAttributeUnixUID,
fileAttributeUnixGID,
fileAttributeUnixRDev,
fileAttributeUnixBlockSize,
fileAttributeUnixBlocks,
fileAttributeDosIsMountpoint,
fileAttributeDosIsArchive,
fileAttributeDosIsSystem,
fileAttributeOwnerUser,
fileAttributeOwnerUserReal,
fileAttributeOwnerGroup,
fileAttributeThumbnailPath,
fileAttributeThumbnailingFailed,
{-# LINE 131 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributePreviewIcon,
{-# LINE 133 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemSize,
fileAttributeFilesystemFree,
fileAttributeFilesystemType,
fileAttributeFilesystemReadonly,
fileAttributeGVfsBackend,
fileAttributeSELinuxContext,
fileAttributeTrashItemCount,
fileAttributeFilesystemUsePreview,
fileAttributeStandardDescription,
{-# LINE 143 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTrashOrigPath,
fileAttributeTrashDeletionDate,
{-# LINE 146 "System/GIO/File/FileAttribute.hsc" #-}
) where
import System.Glib.FFI
import System.Glib.UTFString
import System.Glib.Flags
import System.GIO.Enums
data FileAttributeType = FileAttributeTypeInvalid
| FileAttributeTypeString
| FileAttributeTypeByteString
| FileAttributeTypeBool
| FileAttributeTypeWord32
| FileAttributeTypeInt32
| FileAttributeTypeWord64
| FileAttributeTypeInt64
| FileAttributeTypeObject
{-# LINE 165 "System/GIO/File/FileAttribute.hsc" #-}
| FileAttributeTypeStringList
{-# LINE 167 "System/GIO/File/FileAttribute.hsc" #-}
deriving (Eq, Ord, Bounded, Show, Read)
instance Enum FileAttributeType where
toEnum 0 = FileAttributeTypeInvalid
{-# LINE 170 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 1 = FileAttributeTypeString
{-# LINE 171 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 2 = FileAttributeTypeByteString
{-# LINE 172 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 3 = FileAttributeTypeBool
{-# LINE 173 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 4 = FileAttributeTypeWord32
{-# LINE 174 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 5 = FileAttributeTypeInt32
{-# LINE 175 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 6 = FileAttributeTypeWord64
{-# LINE 176 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 7 = FileAttributeTypeInt64
{-# LINE 177 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 8 = FileAttributeTypeObject
{-# LINE 178 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 179 "System/GIO/File/FileAttribute.hsc" #-}
toEnum 9 = FileAttributeTypeStringList
{-# LINE 180 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 181 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeInvalid = 0
{-# LINE 183 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeString = 1
{-# LINE 184 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeByteString = 2
{-# LINE 185 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeBool = 3
{-# LINE 186 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeWord32 = 4
{-# LINE 187 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeInt32 = 5
{-# LINE 188 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeWord64 = 6
{-# LINE 189 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeInt64 = 7
{-# LINE 190 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeObject = 8
{-# LINE 191 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 192 "System/GIO/File/FileAttribute.hsc" #-}
fromEnum FileAttributeTypeStringList = 9
{-# LINE 193 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 194 "System/GIO/File/FileAttribute.hsc" #-}
data FileAttributeInfo =
FileAttributeInfo
{ fileAttributeInfoName :: DefaultGlibString
, fileAttributeInfoType :: FileAttributeType
, fileAttributeInfoFlags :: [FileAttributeInfoFlags]
} deriving (Eq, Read, Show)
instance Storable FileAttributeInfo where
sizeOf _ = (16)
{-# LINE 204 "System/GIO/File/FileAttribute.hsc" #-}
alignment _ = alignment (undefined :: Ptr ())
peek ptr = do
retName <- (\hsc_ptr -> peekByteOff hsc_ptr 0) ptr >>= readUTFString
{-# LINE 207 "System/GIO/File/FileAttribute.hsc" #-}
retType <- ((\hsc_ptr -> peekByteOff hsc_ptr 8) ptr :: IO CInt) >>= return . (toEnum . fromIntegral)
{-# LINE 208 "System/GIO/File/FileAttribute.hsc" #-}
retFlags <- ((\hsc_ptr -> peekByteOff hsc_ptr 12) ptr :: IO CInt) >>= return . (toFlags . fromIntegral)
{-# LINE 209 "System/GIO/File/FileAttribute.hsc" #-}
return $ FileAttributeInfo
{ fileAttributeInfoName = retName
, fileAttributeInfoType = retType
, fileAttributeInfoFlags = retFlags }
poke _ = error "not implemented"
fileAttributeStandardType,
fileAttributeStandardIsHidden,
fileAttributeStandardIsBackup,
fileAttributeStandardIsSymlink,
fileAttributeStandardIsVirtual,
fileAttributeStandardName,
fileAttributeStandardDisplayName,
fileAttributeStandardEditName,
fileAttributeStandardCopyName,
fileAttributeStandardIcon,
fileAttributeStandardContentType,
fileAttributeStandardFastContentType,
fileAttributeStandardSize,
{-# LINE 230 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardAllocatedSize,
{-# LINE 232 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardSymlinkTarget,
fileAttributeStandardTargetURI,
fileAttributeStandardSortOrder,
fileAttributeEtagValue,
fileAttributeIDFile,
fileAttributeIDFilesystem,
fileAttributeAccessCanRead,
fileAttributeAccessCanWrite,
fileAttributeAccessCanExecute,
fileAttributeAccessCanDelete,
fileAttributeAccessCanTrash,
fileAttributeAccessCanRename,
fileAttributeMountableCanMount,
fileAttributeMountableCanUnmount,
fileAttributeMountableCanEject,
fileAttributeMountableUnixDevice,
{-# LINE 249 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableUnixDeviceFile,
fileAttributeMountableCanStart,
fileAttributeMountableCanDegraded,
fileAttributeMountableCanStop,
fileAttributeMountableStartStopType,
fileAttributeMountableCanPoll,
{-# LINE 256 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableHalUDI,
fileAttributeTimeModified,
fileAttributeTimeModifiedUSec,
fileAttributeTimeAccess,
fileAttributeTimeAccessUSec,
fileAttributeTimeChanged,
fileAttributeTimeChangedUSec,
fileAttributeTimeCreated,
fileAttributeTimeCreatedUSec,
fileAttributeUnixDevice,
fileAttributeUnixInode,
fileAttributeUnixMode,
fileAttributeUnixNLink,
fileAttributeUnixUID,
fileAttributeUnixGID,
fileAttributeUnixRDev,
fileAttributeUnixBlockSize,
fileAttributeUnixBlocks,
fileAttributeDosIsMountpoint,
fileAttributeDosIsArchive,
fileAttributeDosIsSystem,
fileAttributeOwnerUser,
fileAttributeOwnerUserReal,
fileAttributeOwnerGroup,
fileAttributeThumbnailPath,
fileAttributeThumbnailingFailed,
{-# LINE 283 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributePreviewIcon,
{-# LINE 285 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemSize,
fileAttributeFilesystemFree,
fileAttributeFilesystemType,
fileAttributeFilesystemReadonly,
fileAttributeGVfsBackend,
fileAttributeSELinuxContext,
fileAttributeTrashItemCount,
fileAttributeFilesystemUsePreview,
{-# LINE 294 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTrashOrigPath,
fileAttributeTrashDeletionDate,
{-# LINE 297 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardDescription
:: String
fileAttributeStandardType = "standard::type"
{-# LINE 300 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardIsHidden = "standard::is-hidden"
{-# LINE 301 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardIsBackup = "standard::is-backup"
{-# LINE 302 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardIsSymlink = "standard::is-symlink"
{-# LINE 303 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardIsVirtual = "standard::is-virtual"
{-# LINE 304 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardName = "standard::name"
{-# LINE 305 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardDisplayName = "standard::display-name"
{-# LINE 306 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardEditName = "standard::edit-name"
{-# LINE 307 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardCopyName = "standard::copy-name"
{-# LINE 308 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardIcon = "standard::icon"
{-# LINE 309 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardContentType = "standard::content-type"
{-# LINE 310 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardFastContentType = "standard::fast-content-type"
{-# LINE 311 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardSize = "standard::size"
{-# LINE 312 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 313 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardAllocatedSize = "standard::allocated-size"
{-# LINE 314 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 315 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardSymlinkTarget = "standard::symlink-target"
{-# LINE 316 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardTargetURI = "standard::target-uri"
{-# LINE 317 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardSortOrder = "standard::sort-order"
{-# LINE 318 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeEtagValue = "etag::value"
{-# LINE 319 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeIDFile = "id::file"
{-# LINE 320 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeIDFilesystem = "id::filesystem"
{-# LINE 321 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanRead = "access::can-read"
{-# LINE 322 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanWrite = "access::can-write"
{-# LINE 323 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanExecute = "access::can-execute"
{-# LINE 324 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanDelete = "access::can-delete"
{-# LINE 325 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanTrash = "access::can-trash"
{-# LINE 326 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeAccessCanRename = "access::can-rename"
{-# LINE 327 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanMount = "mountable::can-mount"
{-# LINE 328 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanUnmount = "mountable::can-unmount"
{-# LINE 329 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanEject = "mountable::can-eject"
{-# LINE 330 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableUnixDevice = "mountable::unix-device"
{-# LINE 331 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 332 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableUnixDeviceFile = "mountable::unix-device-file"
{-# LINE 333 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanStart = "mountable::can-start"
{-# LINE 334 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanDegraded = "mountable::can-start-degraded"
{-# LINE 335 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanStop = "mountable::can-stop"
{-# LINE 336 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableStartStopType = "mountable::start-stop-type"
{-# LINE 337 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableCanPoll = "mountable::can-poll"
{-# LINE 338 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableIsMediaCheckAutomatic = "mountable::is-media-check-automatic"
{-# LINE 339 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 340 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeMountableHalUDI = "mountable::hal-udi"
{-# LINE 341 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeModified = "time::modified"
{-# LINE 342 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeModifiedUSec = "time::modified-usec"
{-# LINE 343 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeAccess = "time::access"
{-# LINE 344 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeAccessUSec = "time::access-usec"
{-# LINE 345 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeChanged = "time::changed"
{-# LINE 346 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeChangedUSec = "time::changed-usec"
{-# LINE 347 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeCreated = "time::created"
{-# LINE 348 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTimeCreatedUSec = "time::created-usec"
{-# LINE 349 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixDevice = "unix::device"
{-# LINE 350 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixInode = "unix::inode"
{-# LINE 351 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixMode = "unix::mode"
{-# LINE 352 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixNLink = "unix::nlink"
{-# LINE 353 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixUID = "unix::uid"
{-# LINE 354 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixGID = "unix::gid"
{-# LINE 355 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixRDev = "unix::rdev"
{-# LINE 356 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixBlockSize = "unix::block-size"
{-# LINE 357 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeUnixBlocks = "unix::blocks"
{-# LINE 358 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeDosIsMountpoint = "unix::is-mountpoint"
{-# LINE 359 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeDosIsArchive = "dos::is-archive"
{-# LINE 360 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeDosIsSystem = "dos::is-system"
{-# LINE 361 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeOwnerUser = "owner::user"
{-# LINE 362 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeOwnerUserReal = "owner::user-real"
{-# LINE 363 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeOwnerGroup = "owner::group"
{-# LINE 364 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeThumbnailPath = "thumbnail::path"
{-# LINE 365 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeThumbnailingFailed = "thumbnail::failed"
{-# LINE 366 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 367 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributePreviewIcon = "preview::icon"
{-# LINE 368 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 369 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemSize = "filesystem::size"
{-# LINE 370 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemFree = "filesystem::free"
{-# LINE 371 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemType = "filesystem::type"
{-# LINE 372 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemReadonly = "filesystem::readonly"
{-# LINE 373 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeGVfsBackend = "gvfs::backend"
{-# LINE 374 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeSELinuxContext = "selinux::context"
{-# LINE 375 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTrashItemCount = "trash::item-count"
{-# LINE 376 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeFilesystemUsePreview = "filesystem::use-preview"
{-# LINE 377 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeStandardDescription = "standard::description"
{-# LINE 378 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 379 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTrashOrigPath = "trash::orig-path"
{-# LINE 380 "System/GIO/File/FileAttribute.hsc" #-}
fileAttributeTrashDeletionDate = "trash::deletion-date"
{-# LINE 381 "System/GIO/File/FileAttribute.hsc" #-}
{-# LINE 382 "System/GIO/File/FileAttribute.hsc" #-}