hinotify-0.3.1: Haskell binding to INotify

Portabilityhc portable, linux only
Stabilityexperimental
Maintainerkolmodin@dtek.chalmers.se

System.INotify

Description

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.

Documentation

killINotify :: INotify -> IO ()

withINotify :: (INotify -> IO a) -> IO a

addWatch :: INotify -> [EventVariety] -> FilePath -> (Event -> IO ()) -> IO WatchDescriptor

data INotify

Instances

Show INotify 

data Event

Constructors

Accessed

A file was accessed. Accessed isDirectory file

Fields

isDirectory :: Bool
 
maybeFilePath :: Maybe FilePath
 
Modified

A file was modified. Modified isDiroctory file

Fields

isDirectory :: Bool
 
maybeFilePath :: Maybe FilePath
 
Attributes

A files attributes where changed. Attributes isDirectory file

Fields

isDirectory :: Bool
 
maybeFilePath :: Maybe FilePath
 
Closed

A file was closed. Closed isDirectory file wasWriteable

Fields

isDirectory :: Bool
 
maybeFilePath :: Maybe FilePath
 
wasWriteable :: Bool
 
Opened

A file was opened. Opened isDirectory maybeFilePath

Fields

isDirectory :: Bool
 
maybeFilePath :: Maybe FilePath
 
MovedOut

A file was moved away from the watched dir. MovedFrom isDirectory from cookie

Fields

isDirectory :: Bool
 
filePath :: FilePath
 
moveCookie :: Cookie
 
MovedIn

A file was moved into the watched dir. MovedTo isDirectory to cookie

Fields

isDirectory :: Bool
 
filePath :: FilePath
 
moveCookie :: Cookie
 
MovedSelf

The watched file was moved. MovedSelf isDirectory

Fields

isDirectory :: Bool
 
Created

A file was created. Created isDirectory file

Fields

isDirectory :: Bool
 
filePath :: FilePath
 
Deleted

A file was deleted. Deleted isDirectory file

Fields

isDirecotry :: Bool
 
filePath :: FilePath
 
DeletedSelf

The file watched was deleted.

Unmounted

The file watched was unmounted.

QOverflow

The queue overflowed.

Ignored 
Unknown FDEvent 

Instances

Eq Event 
Show Event 

data Cookie

Instances

Eq Cookie 
Ord Cookie 
Show Cookie