-- 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.4
-- | 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
killINotify :: INotify -> IO ()
withINotify :: (INotify -> IO a) -> IO a
addWatch :: INotify -> [EventVariety] -> RawFilePath -> (Event -> IO ()) -> IO WatchDescriptor
removeWatch :: WatchDescriptor -> IO ()
data INotify
data WatchDescriptor
data Event
-- | A file was accessed. Accessed isDirectory file
Accessed :: Bool -> Maybe RawFilePath -> Event
[isDirectory] :: Event -> Bool
[maybeFilePath] :: Event -> Maybe RawFilePath
-- | A file was modified. Modified isDirectory file
Modified :: Bool -> Maybe RawFilePath -> Event
[isDirectory] :: Event -> Bool
[maybeFilePath] :: Event -> Maybe RawFilePath
-- | A files attributes where changed. Attributes isDirectory file
Attributes :: Bool -> Maybe RawFilePath -> Event
[isDirectory] :: Event -> Bool
[maybeFilePath] :: Event -> Maybe RawFilePath
-- | A file was closed. Closed isDirectory file wasWriteable
Closed :: Bool -> Maybe RawFilePath -> Bool -> Event
[isDirectory] :: Event -> Bool
[maybeFilePath] :: Event -> Maybe RawFilePath
[wasWriteable] :: Event -> Bool
-- | A file was opened. Opened isDirectory maybeFilePath
Opened :: Bool -> Maybe RawFilePath -> Event
[isDirectory] :: Event -> Bool
[maybeFilePath] :: Event -> Maybe RawFilePath
-- | A file was moved away from the watched dir. MovedFrom isDirectory
-- from cookie
MovedOut :: Bool -> RawFilePath -> Cookie -> Event
[isDirectory] :: Event -> Bool
[filePath] :: Event -> RawFilePath
[moveCookie] :: Event -> Cookie
-- | A file was moved into the watched dir. MovedTo isDirectory to
-- cookie
MovedIn :: Bool -> RawFilePath -> Cookie -> Event
[isDirectory] :: Event -> Bool
[filePath] :: Event -> RawFilePath
[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 -> RawFilePath -> Event
[isDirectory] :: Event -> Bool
[filePath] :: Event -> RawFilePath
-- | A file was deleted. Deleted isDirectory file
Deleted :: Bool -> RawFilePath -> Event
[isDirectory] :: Event -> Bool
[filePath] :: Event -> RawFilePath
-- | 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 GHC.Classes.Eq System.INotify.EventVariety
instance GHC.Classes.Eq System.INotify.WatchDescriptor
instance GHC.Show.Show System.INotify.Event
instance GHC.Classes.Eq System.INotify.Event
instance GHC.Show.Show System.INotify.FDEvent
instance GHC.Classes.Eq System.INotify.FDEvent
instance GHC.Classes.Ord System.INotify.Cookie
instance GHC.Classes.Eq System.INotify.Cookie
instance GHC.Show.Show System.INotify.WatchDescriptor
instance GHC.Classes.Eq System.INotify.INotify
instance GHC.Show.Show System.INotify.INotify
instance GHC.Show.Show System.INotify.Cookie