-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Haskell binding to INotify
--
-- This library provides a wrapper to the Linux Kernel's inotify feature,
-- allowing applications to subscribe to notifications when a file is
-- accessed or modified.
@package hinotify
@version 0.2
-- | A Haskell binding to INotify. See
-- http://www.kernel.org/pub/linux/kernel/people/rml/inotify/ and
-- man inotify.
--
-- Use initINotify to get a INotify, then use
-- addWatch to add a watch on a file or directory. Select which
-- events you're interested in with EventVariety, which
-- corresponds to the Event events.
--
-- Use removeWatch once you don't want to watch a file any more.
module System.INotify
initINotify :: IO INotify
addWatch :: INotify -> [EventVariety] -> FilePath -> (Event -> IO ()) -> IO WatchDescriptor
removeWatch :: INotify -> WatchDescriptor -> IO ()
data INotify
data WatchDescriptor
data Event
-- | A file was accessed. Accessed isDirectory file
Accessed :: Bool -> Maybe FilePath -> Event
isDirectory :: Event -> Bool
maybeFilePath :: Event -> Maybe FilePath
-- | A file was modified. Modified isDiroctory file
Modified :: Bool -> Maybe FilePath -> Event
isDirectory :: Event -> Bool
maybeFilePath :: Event -> Maybe FilePath
-- | A files attributes where changed. Attributes isDirectory file
Attributes :: Bool -> Maybe FilePath -> Event
isDirectory :: Event -> Bool
maybeFilePath :: Event -> Maybe FilePath
-- | A file was closed. Closed isDirectory file wasWriteable
Closed :: Bool -> Maybe FilePath -> Bool -> Event
isDirectory :: Event -> Bool
maybeFilePath :: Event -> Maybe FilePath
wasWriteable :: Event -> Bool
-- | A file was opened. Opened isDirectory maybeFilePath
Opened :: Bool -> Maybe FilePath -> Event
isDirectory :: Event -> Bool
maybeFilePath :: Event -> Maybe FilePath
-- | A file was moved away from the watched dir. MovedFrom isDirectory
-- from cookie
MovedOut :: Bool -> FilePath -> Cookie -> Event
isDirectory :: Event -> Bool
filePath :: Event -> FilePath
moveCookie :: Event -> Cookie
-- | A file was moved into the watched dir. MovedTo isDirectory to
-- cookie
MovedIn :: Bool -> FilePath -> Cookie -> Event
isDirectory :: Event -> Bool
filePath :: Event -> FilePath
moveCookie :: Event -> Cookie
-- | The watched file was moved. MovedSelf isDirectory
MovedSelf :: Bool -> Event
isDirectory :: Event -> Bool
-- | A file was created. Created isDirectory file
Created :: Bool -> FilePath -> Event
isDirectory :: Event -> Bool
filePath :: Event -> FilePath
-- | A file was deleted. Deleted isDirectory file
Deleted :: Bool -> FilePath -> Event
isDirecotry :: Event -> Bool
filePath :: Event -> FilePath
-- | The file watched was deleted.
DeletedSelf :: Event
-- | The file watched was unmounted.
Unmounted :: Event
-- | The queue overflowed.
QOverflow :: Event
Ignored :: Event
Unknown :: FDEvent -> Event
data EventVariety
Access :: EventVariety
Modify :: EventVariety
Attrib :: EventVariety
Close :: EventVariety
CloseWrite :: EventVariety
CloseNoWrite :: EventVariety
Open :: EventVariety
Move :: EventVariety
MoveIn :: EventVariety
MoveOut :: EventVariety
MoveSelf :: EventVariety
Create :: EventVariety
Delete :: EventVariety
DeleteSelf :: EventVariety
OnlyDir :: EventVariety
NoSymlink :: EventVariety
MaskAdd :: EventVariety
OneShot :: EventVariety
AllEvents :: EventVariety
data Cookie
instance Eq EventVariety
instance Eq Event
instance Show Event
instance Eq FDEvent
instance Show FDEvent
instance Eq Cookie
instance Ord Cookie
instance Eq WatchDescriptor
instance Show Cookie
instance Show WatchDescriptor
instance Show INotify